ฟังก์ชัน IFNULL() เป็นฟังก์ชันใน SQL ที่ใช้สำหรับตรวจสอบค่าที่เป็น NULL แล้วแทนที่ด้วยค่าที่กำหนดไว้ โดย
- ถ้าค่าเป็น
NULLคืนค่าที่กำหนดไว้ - ถ้าไม่ใช่
NULLคืนค่าต้นฉบับ
รูปแบบคำสั่ง
IFNULL(expression, replacement_value)
expression= ค่าที่ต้องการตรวจสอบreplacement_value= ค่าที่จะใช้แทนถ้าexpressionเป็นNULL
ตัวอย่างการใช้งาน
แสดงที่อยู่เสริม (address2) โดยใส่ข้อความ “ไม่มีข้อมูล” หากเป็น NULL
SQL
SELECT address, IFNULL(address2, 'ไม่มีข้อมูล') AS address_info
FROM address;- ถ้า
address2เป็นNULLแสดงคำว่า"ไม่มีข้อมูล" - ถ้า
address2ไม่เป็นNULLแสดงค่าจากaddress2
แสดงอีเมลลูกค้า ถ้าไม่มีให้แทนด้วยคำว่า “ไม่ระบุ”
SQL
SELECT first_name, last_name, IFNULL(email, 'ไม่ระบุ') AS email_status
FROM customer;ใช้ในการคำนวณ
สมมติว่ามีตารางชื่อ payment_history
SQL
SELECT amount + IFNULL(discount, 0) AS net_amount
FROM payment_history;- ถ้าคอลัมน์
discountเป็นNULLจะใช้ค่า0แทน - ช่วยหลีกเลี่ยงผลลัพธ์ผิดพลาดจากการบวกกับ
NULL