การเปรียบเทียบค่า
eSymphony ต้องการให้ตรวจสอบความแตกต่างระหว่างชื่อ composer กับชื่อศิลปิน โดยเฉพาะอย่างยิ่ง ต้องการทราบว่าแทร็กของ Queen รายการใดบ้างที่มีค่าทั้งสองต่างกัน หากเหมือนกันให้แสดงค่า NULL และหากต่างกันให้แสดงชื่อศิลปิน ซึ่งเรื่องนี้ไม่ใช่ปัญหาเลย เพราะรู้จักฟังก์ชันเกี่ยวกับ null เป็นอย่างดี
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Oracle SQL เบื้องต้น
คำแนะนำการฝึกหัด
- แสดงค่า
NULLหากชื่อศิลปินและ composer เหมือนกัน และแสดงชื่อศิลปินหากต่างกัน - กรองเฉพาะแถวที่ชื่อศิลปินเป็น
'Queen'
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
-- Use the correct null-related function
SELECT t.Name, ar.Name, t.Composer, ___(___, ___)
FROM Track t INNER JOIN Album a
ON t.AlbumId = a.AlbumId
INNER JOIN Artist ar
ON a.ArtistId = ar.ArtistId
-- Filter on artist name Queen
WHERE ___ = '___'
ORDER BY 3