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

กรณีเงื่อนไข NOT NULL ใน MySQL


สำหรับกรณีเงื่อนไข NOT NULL ไม่ต้องใช้ตัวดำเนินการ <> และ = ต้องใช้ IS NULL และ IS NOT NULL แทน เนื่องจาก NULL เป็นกรณีพิเศษใน MySQL

ตัวอย่างการใช้งาน

สร้างตารางทดสอบ:

mysql> create table ConditionalNotNullDemo ( Id int NOT NULL AUTO_INCREMENT, SendMessage longtext, PRIMARY KEY(Id) ); Query OK, 0 rows affected (0.62 sec)

เพิ่มข้อมูลทดสอบ:

mysql> insert into ConditionalNotNullDemo(SendMessage) values(NULL); Query OK, 1 row affected (0.16 sec)
mysql> insert into ConditionalNotNullDemo(SendMessage) values('Hi'); Query OK, 1 row affected (0.15 sec)
mysql> insert into ConditionalNotNullDemo(SendMessage) values('Hello'); Query OK, 1 row affected (0.20 sec)
mysql> insert into ConditionalNotNullDemo(SendMessage) values(NULL); Query OK, 1 row affected (0.18 sec)

แสดงข้อมูลทั้งหมด:

mysql> select *from ConditionalNotNullDemo;

ผลลัพธ์:

+----+-------------+ | Id | SendMessage | +----+-------------+ | 1  | NULL        | | 2  | Hi          | | 3  | Hello       | | 4  | NULL        | +----+-------------+ 4 rows in set (0.00 sec)

กรณีที่ 1: กรองข้อความที่เป็น NULL

ใช้คุณสมบัติ IS NULL:

mysql> select *from ConditionalNotNullDemo where SendMessage IS NULL;

ผลลัพธ์:

+----+-------------+ | Id | SendMessage | +----+-------------+ | 1  | NULL        | | 4  | NULL        | +----+-------------+ 2 rows in set (0.00 sec)

กรณีที่ 2: แสดงข้อความที่ไม่ใช่ NULL

ใช้คุณสมบัติ IS NOT NULL:

mysql> select *from ConditionalNotNullDemo where SendMessage IS NOT NULL;

ผลลัพธ์:

+----+-------------+ | Id | SendMessage | +----+-------------+ | 2  | Hi          | | 3  | Hello       | +----+-------------+ 2 rows in set (0.03 sec)