การ JOIN โดยใช้ alias ของตาราง
การกำหนด alias ให้กับตารางช่วยให้อ้างอิงชื่อตารางในส่วนอื่น ๆ ของคิวรีได้สะดวกขึ้น เช่น ในส่วน SELECT
เมื่อใช้ SELECT ดึงฟิลด์ข้อมูล บางครั้งชื่อฟิลด์อาจกำกวมได้ ตัวอย่างเช่น หากมีสองตารางคือ apples และ oranges และทั้งสองมีคอลัมน์ชื่อ color เหมือนกัน คุณจะต้องใช้ไวยากรณ์ apples.color หรือ oranges.color ในส่วน SELECT เพื่อบอก SQL ว่าต้องการดึงข้อมูลจากตารางใด หากไม่ระบุ จะเกิดข้อผิดพลาดดังนี้:
column reference "color" is ambiguous
ในแบบฝึกหัดนี้ จะได้ฝึกการ JOIN โดยใช้ alias ของตาราง โดยใช้ข้อมูลจากทั้งตาราง countries และ economies เพื่อดูอัตราเงินเฟ้อในปี 2010 และ 2015
นักพัฒนา SQL หลายคนนิยมเขียนส่วน SELECT หลัง จากเขียนโค้ดสำหรับการ JOIN เสร็จแล้ว เพื่อให้สามารถใช้ alias ของตารางในส่วน SELECT ได้อย่างถูกต้อง
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การ Join ข้อมูลใน SQL
คำแนะนำการฝึกหัด
- เริ่มต้นด้วยการเขียน inner join ในบรรทัดที่ 5 โดย JOIN ตาราง
countries AS c(ซ้าย) กับตารางeconomies(ขวา) และกำหนด alias ให้economies AS e - ถัดไป ใช้
codeเป็นฟิลด์สำหรับการ JOIN ในบรรทัดที่ 7 โดย ไม่ต้อง ใช้คำสั่งUSING - สุดท้าย เลือกคอลัมน์ต่อไปนี้ ตามลำดับ ในบรรทัดที่ 2:
codeจากตารางcountries(กำหนด alias เป็นcountry_code),name,yearและinflation_rate
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
-- Select fields with aliases
___
FROM countries AS c
-- Join to economies (alias e)
___
-- Match on code field using table aliases
___