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

ทำไมใน MySQL เราจึงใช้ตัวดำเนินการเลขคณิตเช่น '=', '<' หรือ '<>' กับ NULL ไม่ได้


เหตุผลเบื้องหลังก็คือเราจะไม่ได้รับผลลัพธ์ที่มีความหมายใดๆ จากการเปรียบเทียบเมื่อเราใช้ NULL กับตัวดำเนินการเปรียบเทียบ เช่น '=', '<' หรือ '<>' ลองพิจารณาตัวอย่างต่อไปนี้ซึ่งแสดงให้เห็นถึงแนวคิดนี้ -

mysql> Select 10 = NULL, 10< NULL, 10<>NULL;
+-----------+----------+----------+
| 10 = NULL | 10< NULL | 10<>NULL |
+-----------+----------+----------+
|      NULL |     NULL |     NULL |
+-----------+----------+----------+
1 row in set (0.07 sec)

ชุดผลลัพธ์ข้างต้นไม่มีความหมายเลย