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

เมื่อฟังก์ชัน MySQL IN () ส่งคืน NULL


ต่อไปนี้เป็นสองกรณีที่ฟังก์ชัน MySQL IN() ส่งคืนค่า NULL เป็นผลลัพธ์ -

Case-1 − เมื่อนิพจน์ทางด้านซ้ายเป็น NULL

IN() ฟังก์ชันจะคืนค่า NULL หากนิพจน์ทางด้านซ้ายเป็น NULL ตัวอย่างต่อไปนี้จะแสดงให้เห็น -

mysql> Select NULL IN (1,2,3,4,10);
+----------------------+
| NULL IN (1,2,3,4,10) |
+----------------------+
|       NULL           |
+----------------------+
1 row in set (0.00 sec)

Case-2 − เมื่อหนึ่งในนิพจน์ในรายการเป็น NULL และไม่พบรายการที่ตรงกัน

IN() ฟังก์ชันจะคืนค่า NULL หากไม่พบรายการที่ตรงกัน และหนึ่งในนิพจน์ในรายการเป็น NULL หากมีการจับคู่และหนึ่งในนิพจน์ในรายการเป็น NULL ก็จะคืนค่า 1 เป็นเอาต์พุต ตัวอย่างต่อไปนี้จะแสดงให้เห็น -

mysql> Select 10 IN (NULL,11,12);
+--------------------+
| 10 IN (NULL,11,12) |
+--------------------+
|      NULL          |
+--------------------+
1 row in set (0.00 sec)

mysql> Select 10 IN (NULL,11,12,10);
+-----------------------+
| 10 IN (NULL,11,12,10) |
+-----------------------+
|         1             |
+-----------------------+
1 row in set (0.00 sec)