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

MySQL IF() ทำงานอย่างไร (IF ELSE / IF THEN ELSE)

Control Flow Function: IF()

คืนค่าตามเงื่อนไข 3 อาร์กิวเมนต์

Syntax

IF(expr, value_if_true, value_if_false)
  • expr: เงื่อนไข (TRUE = ไม่ใช่ 0 และไม่ใช่ NULL)
  • value_if_true: ค่าที่คืนเมื่อ expr เป็น TRUE
  • value_if_false: ค่าที่คืนเมื่อ expr เป็น FALSE (รวม 0 และ NULL)

ตัวอย่าง

mysql> SELECT IF(100=100, 'YES', 'NO');
+------------------------+
| IF(100=100, 'YES', 'NO') |
+------------------------+
| YES                    |
+------------------------+

mysql> SELECT IF(100=200, 'YES', 'NO');
+------------------------+
| IF(100=200, 'YES', 'NO') |
+------------------------+
| NO                     |
+------------------------+

เงื่อนไขที่เป็น TRUE

  • ตัวเลข ≠ 0
  • สตริง ≠ '' (Non-empty)
  • Comparison ที่เป็นจริง (1=1, 'a'='a')
  • IS NOT NULL

เงื่อนไขที่เป็น FALSE

  • 0
  • NULL
  • '' (Empty string)
  • Comparison ที่เป็นเท็จ

ข้อแตกต่างจาก CASE

  • IF: แค่ 2 ทางเลือก (True/False)
  • CASE: หลายเงื่อนไข (WHEN ... THEN ... ELSE)