เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การเติมค่าที่หายไปด้วย COALESCE()

ในแบบฝึกหัดก่อนหน้า คุณใช้ฟังก์ชัน ISNULL() เพื่อแทนที่ค่า NULL ในคอลัมน์ด้วยค่าอื่น

คราวนี้ต้องการสร้างคอลัมน์ใหม่ชื่อ location ที่จะคืนค่าจากคอลัมน์ airport_city และหาก airport_city เป็น NULL ให้คืนค่าจาก airport_state แทน แต่ถ้า airport_state เป็น NULL ด้วย ให้คืนค่าเป็น string 'Unknown'

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

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การทำความสะอาดข้อมูลในฐานข้อมูล SQL Server

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ COALESCE() เพื่อคืนค่าที่ไม่ใช่ NULL ค่าแรกจาก airport_city, airport_state หรือ 'Unknown'

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

SELECT
airport_code,
airport_name,
-- Replace the missing values
___(___, ___, '___') AS location
FROM airports
แก้ไขและรันโค้ด