Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ชนิดข้อมูลเล็กที่สุดสำหรับ 1 Bit ใน MySQL

BIT(1) - ชนิดข้อมูลสำหรับ 1 Bit

MySQL มีชนิดข้อมูล BIT(n) สำหรับเก็บค่า Bit Field ใช้ BIT(1) สำหรับ True/False

ไวยากรณ์

yourColumnName BIT(1)

ตัวอย่าง

CREATE TABLE bitDemo (
    isValid BIT(1)
);

ตรวจสอบโครงสร้าง

SHOW CREATE TABLE bitDemo;
CREATE TABLE `bitdemo` (`isValid` bit(1) DEFAULT NULL) ENGINE=InnoDB ...

Insert ข้อมูล

INSERT INTO bitDemo VALUES (0), (1), (1), (0);

แสดงผล (ดูเป็นตัวเลข)

SELECT isValid + 0 FROM bitDemo;
+-----------+
| isValid+0 |
+-----------+
| 0         |
| 1         |
| 1         |
| 0         |
+-----------+

เปรียบเทียบชนิดข้อมูล Boolean

TypeStorageRangeNote
BIT(1)1 bit0-1เล็กที่สุด จริงๆ ใช้ 1 byte
TINYINT(1)1 byte-128 to 127Boolean alias ใช้กันทั่วไป
BOOLEAN1 byte0/1Alias ของ TINYINT(1)
CHAR(1)1 byte'0'/'1'เก็บเป็น Char

ข้อควรระวัง

  • BIT(1) จัดเก็บจริงใช้ 1 Byte (8 bits) เพราะ Memory Alignment
  • SELECT ตรงๆ จะแสดง Binary Data (อ่านไม่ออก) ต้อง +0 หรือ CAST
  • MySQL แปลง BIT เป็น Numeric Context อัตโนมัติใน Expression