Skip to content

1.3 Core Data Categories

ข้อมูลทุกชิ้นในโลกตกอยู่ใน 4 ตระกูล ไม่ว่าจะเปิดใน Sheets, เขียนใน C, วิเคราะห์ใน Python หรือ query ใน SQL — ถ้าจำ 4 ตระกูลนี้ได้ คุณจะอ่านข้อมูลทุกรูปแบบได้

ทุกอย่างที่เป็นตัวอักษร — ชื่อ, ที่อยู่, รหัสนักเรียน, email

กฎสำคัญ: ถ้าค่านั้น “ไม่มีวันนำไปบวกลบ” → มันคือ text แม้จะหน้าตาเป็นตัวเลข (เช่น เลขบัตรประชาชน, รหัสไปรษณีย์)

ค่าที่ใช้คำนวณได้ — ราคา, จำนวน, คะแนน, อุณหภูมิ

แบ่งย่อยเป็น:

  • Integer — จำนวนเต็ม (1, 42, -7)
  • Float / Double — ทศนิยม (3.14, 199.99) — อาจมี rounding error
  • Decimal — ทศนิยมแม่นยำ (สำหรับเงิน)

3. Date/Time (วันที่ / เวลา)

Section titled “3. Date/Time (วันที่ / เวลา)”

ค่าที่บอกตำแหน่งบนแกนเวลา — วันเกิด, timestamp ลงทะเบียน, เวลานัดหมาย

ภายใน: คอมพิวเตอร์เก็บเป็นตัวเลข (serial number หรือ Unix timestamp) แล้ว “แต่งตัว” ให้เป็นวันที่

ค่าที่มีได้แค่ 2 สถานะ — TRUE/FALSE, ใช่/ไม่ใช่, 1/0

ใช้กับ: สถานะใช้งาน, อนุมัติแล้วหรือยัง, สมัครสมาชิกหรือเปล่า

สร้างตารางนี้:

AB (ค่า)C (ตระกูล)D (ตรวจสอบ)
1PloyText=ISTEXT(B1) → TRUE
2199.50Number=ISNUMBER(B2) → TRUE
32026-04-24Date=ISNUMBER(B3) → TRUE (!)
4TRUEBoolean=ISLOGICAL(B4) → TRUE

เซอร์ไพรส์: วันที่ใน Sheets ถูกจัดเป็น “Number” ภายใน (serial number) — =ISNUMBER() ให้ TRUE

ตรวจสอบเพิ่มเติม:

=TYPE(B1) → 2 (Text)
=TYPE(B2) → 1 (Number)
=TYPE(B3) → 1 (Number — วันที่ก็เป็นตัวเลข!)
=TYPE(B4) → 4 (Boolean)

ค่าที่ TYPE() คืน: 1 = Number, 2 = Text, 4 = Boolean, 16 = Error, 64 = Array

สรุปเปรียบเทียบ

Section titled “สรุปเปรียบเทียบ”
ตระกูลGoogle SheetsCPythonSQL
TextText (auto)char[], char*str / objectVARCHAR, CHAR, TEXT
Number (int)Numberint, longint / int64INTEGER, BIGINT
Number (decimal)Numberfloat, doublefloat / float64DECIMAL, NUMERIC, FLOAT
Date/TimeNumber + formatไม่มี (ใช้ int / library)datetime / TimestampDATE, TIMESTAMP
BooleanBooleanbool (= int)boolBOOLEAN