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

COALESCE() หาค่า Non-NULL แรกจากรายการ

ฟังก์ชัน COALESCE()

คืนค่า Non-NULL แรก จากรายการอาร์กิวเมนต์ รับได้ 1 ตัวขึ้นไป

Syntax

COALESCE(value1, value2, ..., valueN)

ตัวอย่าง

mysql> SELECT COALESCE(NULL, NULL, NULL, 'Ram', 'Aarav', NULL);
+--------------------------------------------------+
| COALESCE(NULL, NULL, NULL, 'Ram', 'Aarav', NULL) |
+--------------------------------------------------+
| Ram                                              |
+--------------------------------------------------+

การทำงาน

  • ตรวจสอบจากซ้ายไปขวา
  • เจอค่า Non-NULL แรก → คืนค่านั้นทันที
  • ทั้งหมดเป็น NULL → คืน NULL

การประยุกต์ใช้

-- Default value สำหรับคอลัมน์ที่อาจเป็น NULL
SELECT COALESCE(phone, 'N/A') FROM users;

-- Fallback chain
SELECT COALESCE(mobile, home_phone, work_phone, 'No contact') FROM customers;