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

การใช้ Alias - BMI รายทีม

นักสถิติบาสเกตบอลต้องการทราบค่าเฉลี่ย Body Mass Index (BMI) ของแต่ละทีม NBA โดยเฉพาะทีมที่มีค่าเฉลี่ย BMI ตั้งแต่ 25 ขึ้นไป ในการนำ Team เข้ามาในคิวรี จะต้อง JOIN ตาราง Players กับตาราง PlayerStats คิวรีนี้ต้องใช้การตั้ง alias เพื่อ:

  • ระบุตารางที่ JOIN และคอลัมน์ที่เกี่ยวข้องได้ง่าย
  • ระบุ sub-query
  • หลีกเลี่ยงความกำกวมของชื่อคอลัมน์
  • ระบุคอลัมน์ใหม่ที่สร้างขึ้น

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

การปรับปรุงประสิทธิภาพคิวรีใน SQL Server

ดูคอร์ส

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

  • กำหนด alias ให้คอลัมน์ค่าเฉลี่ย BMI ใหม่เป็น AvgTeamBMI
  • กำหนด alias ให้ตาราง PlayerStats เป็น ps
  • กำหนด alias ให้ sub-query เป็น p
  • ตาราง PlayerStats และ sub-query เชื่อมกันด้วยคอลัมน์ PlayerName เพิ่ม alias ให้กับคอลัมน์ PlayerName ที่ใช้ในการ JOIN ด้วย

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

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

SELECT Team, 
   ROUND(AVG(BMI),2) AS ___ -- Alias the new column
FROM PlayerStats ___ ___ -- Alias PlayerStats table
INNER JOIN
		(SELECT PlayerName, Country,
			Weight_kg/SQUARE(Height_cm/100) BMI
		 FROM Players) ___ ___ -- Alias the sub-query
             -- Alias the joining columns
	ON ___.PlayerName = ___.PlayerName 
GROUP BY Team
HAVING AVG(BMI) >= 25;
แก้ไขและรันโค้ด