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

MySQL ประเมินนิพจน์อย่างไรหากอาร์กิวเมนต์ไม่เท่ากันใน NULLIF ()


อย่างที่เราทราบดีว่าฟังก์ชันโฟลว์การควบคุม MySQL NULLIF() จะส่งกลับอาร์กิวเมนต์แรกทั้งสองอาร์กิวเมนต์ไม่เหมือนกัน อาร์กิวเมนต์แรกถูกส่งกลับเนื่องจาก MySQL ประเมินอาร์กิวเมนต์แรกสองครั้งหากอาร์กิวเมนต์ทั้งสองไม่เหมือนกัน

ตัวอย่าง

mysql> Select NULLIF('Tutorialspoint','MySQL');
+----------------------------------+
| NULLIF('Tutorialspoint','MySQL') |
+----------------------------------+
| Tutorialspoint                   |
+----------------------------------+
1 row in set (0.00 sec)

ในตัวอย่างข้างต้น เนื่องจากอาร์กิวเมนต์ไม่เหมือนกัน ดังนั้น MySQL จึงประเมินอาร์กิวเมนต์แรก นั่นคือ 'Tutorialspoint' สองครั้งแล้วคืนค่าเป็นเอาต์พุต