วิธีแสดงค่าของคอลัมน์ BIT(1) ใน MySQL ให้อ่านได้
คอลัมน์ BIT(1) เก็บค่าเป็น Binary (0 หรือ 1) แต่การ SELECT ตรงๆ จะแสดงเป็น Binary Character ที่มองไม่เห็น ต้องแปลงเป็นตัวเลขก่อน
ตัวอย่างการใช้งาน
สร้างตารางและเพิ่มข้อมูล:
mysql> create table DemoTable (isCaptured bit(1)); mysql> insert into DemoTable values(0); mysql> insert into DemoTable values(1); mysql> insert into DemoTable values(0); mysql> insert into DemoTable values(1);
SELECT โดยตรง (มองไม่เห็นค่า):
mysql> select * from DemoTable;
+------------+ | isCaptured | +------------+ | | | | | | | | +------------+
แปลงเป็นตัวเลขด้วย + 0 (หรือ CAST(... AS UNSIGNED)):
mysql> select isCaptured + 0 AS Visible from DemoTable;
+---------+ | Visible | +---------+ | 0 | | 1 | | 0 | | 1 | +---------+
วิธีอื่นๆ:
CAST(isCaptured AS UNSIGNED)CONVERT(isCaptured, UNSIGNED)BIN(isCaptured)- แสดงเป็นสตริง Binary ('0' หรือ '1')
BIT(n) โดยทั่วไป: BIT(1) ใช้ 1 บิต | BIT(8) ใช้ 1 ไบต์ | ค่าสูงสุดของ BIT(n) คือ 2^n - 1 | การ INSERT ใช้ b'0', b'1' หรือตัวเลข 0, 1 ก็ได้