Devdit
 

การใช้งาน IFNULL ใน SQL ตัวอย่างและคำอธิบาย

1.8K

บทความนี้อธิบายวิธีการใช้งานฟังก์ชัน IFNULL ใน SQL โดยฟังก์ชัน IFNULL ใช้สำหรับแทนที่ค่า NULL ด้วยค่าอื่น โดยฟังก์ชัน IFNULL จะประกอบด้วย 2 arguments คือ ค่าที่อาจเป็นค่าว่าง และค่าที่จะแทนที่ค่าว่าง หากค่าแรกไม่ว่าง ฟังก์ชัน IFNULL จะคืนค่าแรก กลับกันหากค่าแรกว่าง หรือเป็น NULL ก็จะคืนค่าที่สอง สามารถเขียน IFNULL ใน SQL ได้ดังนี้

 

ตัวอย่าง รูปแบบฟังก์ชัน IFNULL ประกอบด้วย column_name คือ column ที่อาจเป็นค่าว่าง และ default_value คือค่าที่จะแทนที่ค่าว่าง

SELECT IFNULL(column_name, 'default_value')

 

ตัวอย่าง คำสั่งต่อไปนี้จะแสดงค่าของ column name กรณีไม่ว่างจะแสดงค่าตามปกติ และกรณีเป็นค่าว่างเปล่าจะคืนค่า 'unknown' จากตารางชื่อ table

SELECT IFNULL(name, 'unknown') 
FROM table

 

ตัวอย่าง สามารถแทนที่ค่าว่างของ column ด้วยค่าของ column ที่ต้องการได้ จากตัวอย่างกรณี column name เป็นค่าว่าง จะแทนที่ด้วยค่าของ column age แทน

SELECT IFNULL(name, age)
FROM table

 

ตัวอย่าง สามารถแทนที่ค่าว่างด้วยค่าของนิพจน์ที่ต้องการได้ เช่น กรณี column score มีค่าว่างเปล่าให้แทนที่ด้วยค่านิพจน์ 10

SELECT IFNULL(score, 10)
FROM table

 

ตัวอย่าง การใช้ฟังก์ชัน IFNULL กรณีอัปเดทข้อมูล หาก column score เป็นค่าว่างเปล่า ให้ score มีค่าเท่ากับค่าเฉลี่ยของ column score ด้วยคำสั่ง AVG(score)

UPDATE table 
SET score = IFNULL(score, AVG(score))

 

สรุป ฟังก์ชัน IFNULL นั้นมีประโยชน์อย่างมากกับการทำงานร่วมกับข้อมูลที่อาจไม่สมบูรณ์ โดยฟังก์ชัน IFNULL จะแทนที่ค่าว่าง (NULL) เป็นค่าที่ต้องการได้ ซึ่งจะทำให้ข้อมูลที่ไม่สมบูรณ์ดังกล่าว มีข้อมูลที่ครบถ้วนได้ตามเงื่อนไขที่เราต้องการ

แก้ไข 1 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ