เหตุผลเบื้องหลังก็คือเราจะไม่ได้รับผลลัพธ์ที่มีความหมายใดๆ จากการเปรียบเทียบเมื่อเราใช้ 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)
ชุดผลลัพธ์ข้างต้นไม่มีความหมายเลย