MySQL中的BOOLEAN數據類型表示真或假的值。在MySQL中,BOOLEAN值也可以表示為TINYINT(1),其中1表示TRUE,0表示FALSE。
CREATE TABLE students ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, is_active BOOLEAN DEFAULT FALSE, PRIMARY KEY (id) );
在上面的示例中,我們創建了一個名為“students”的表,其中包含學生的ID,名稱和活動狀態。 is_active列具有BOOLEAN數據類型,并將默認值設置為FALSE。
對于BOOLEAN值,可以使用TRUE和FALSE關鍵字,如下所示:
INSERT INTO students (name, is_active) VALUES ('John Doe', TRUE), ('Jane Smith', FALSE);
在上面的示例中,我們向學生表添加了兩個學生:John Doe和Jane Smith。 John Doe的is_active值為TRUE,而Jane Smith的is_active值為FALSE。
在查詢BOOLEAN值時,可以使用TRUE和FALSE關鍵字,也可以使用1和0。以下查詢返回所有活動學生:
SELECT * FROM students WHERE is_active = TRUE;
除了使用BOOLEAN數據類型外,還可以使用BIT數據類型來存儲TRUE / FALSE值。 BIT數據類型在MySQL中可以存儲最多64位二進制數據。以下是BIT數據類型的示例:
CREATE TABLE employees ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, is_active BIT(1) DEFAULT 0, PRIMARY KEY (id) );
在上面的示例中,我們創建了一個名為“employees”的表,其中包含員工的ID,名稱和活動狀態。 is_active列具有BIT數據類型,并將默認值設置為0。
查詢以相同方式查詢BIT數據類型,使用1和0或TRUE和FALSE。以下查詢返回所有活動員工:
SELECT * FROM employees WHERE is_active = 1;
在MySQL中,BOOLEAN和BIT數據類型可以很好地存儲TRUE / FALSE值,并在查詢和操作中提供方便的語法。除此之外,MySQL還提供了其他數據類型來存儲不同類型的數據。