Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Lấy một cột dựa trên giá trị boolean của cột khác trong MySQL

Cột BOOLEAN trong MySQL lưu là TINYINT(1) (1=true, 0=false). Truy vấn trực tiếp WHERE cot_boolean = TRUE hoặc =1.

Tạo bảng:

mysql> CREATE TABLE DemoTable (
    EmployeeId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    EmployeeName VARCHAR(40),
    isMarried BOOLEAN
); Query OK, 0 rows affected (0.57 sec)

Chèn dữ liệu:

mysql> INSERT INTO DemoTable(EmployeeName,isMarried) VALUES('Chris',true);  Query OK, 1 row affected (0.14 sec)
mysql> INSERT INTO DemoTable(EmployeeName,isMarried) VALUES('Robert',false); Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable(EmployeeName,isMarried) VALUES('Mike',false);   Query OK, 1 row affected (0.21 sec)
mysql> INSERT INTO DemoTable(EmployeeName,isMarried) VALUES('Bob',true);    Query OK, 1 row affected (0.07 sec)
mysql> INSERT INTO DemoTable(EmployeeName,isMarried) VALUES('Tom',true);    Query OK, 1 row affected (0.12 sec)

Hiển thị dữ liệu (isMarried hiển thị 1/0):

mysql> SELECT * FROM DemoTable;

Kết quả:

+------------+--------------+-----------+
| EmployeeId | EmployeeName | isMarried |
+------------+--------------+-----------+
| 1          | Chris        | 1         |
| 2          | Robert       | 0         |
| 3          | Mike         | 0         |
| 4          | Bob          | 1         |
| 5          | Tom          | 1         |
+------------+--------------+-----------+
5 rows in set (0.00 sec)

Lấy tên nhân viên đã kết hôn (isMarried=true):

mysql> SELECT EmployeeName FROM DemoTable WHERE isMarried = TRUE;

Kết quả:

+--------------+
| EmployeeName |
+--------------+
| Chris        |
| Bob          |
| Tom          |
+--------------+
3 rows in set (0.00 sec)