นับจำนวนความสัมพันธ์แต่ละมหาวิทยาลัย
ตอนนี้ข้อมูลพร้อมสำหรับการวิเคราะห์แล้ว ลองรัน SQL คิวรีตัวอย่างบนฐานข้อมูลกัน โดยในแบบฝึกหัดนี้จะใช้แนวคิดที่รู้จักกันดีอยู่แล้ว เช่น การจัดกลุ่มตามคอลัมน์และการ JOIN ตาราง
แบบฝึกหัดนี้จะค้นหาว่ามหาวิทยาลัยใดมีความสัมพันธ์ (ผ่านอาจารย์) มากที่สุด ซึ่งต้องใช้ทั้งตาราง affiliations และ professors เนื่องจากตาราง professors เก็บข้อมูล university_id ไว้ด้วย
ทบทวนโครงสร้างของ JOIN อีกครั้ง:
SELECT table_a.column1, table_a.column2, table_b.column1, ...
FROM table_a
JOIN table_b
ON table_a.column = table_b.column
ผลลัพธ์จะเป็นการรวม table_a และ table_b เข้าด้วยกัน โดยแสดงเฉพาะแถวที่ table_a.column มีค่าเท่ากับ table_b.column
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
SQL เบื้องต้น: ฐานข้อมูลเชิงสัมพันธ์
คำแนะนำการฝึกหัด
- นับจำนวนความสัมพันธ์ทั้งหมดจำแนกตามมหาวิทยาลัย
- เรียงลำดับผลลัพธ์ตามจำนวนที่นับได้ จากมากไปน้อย
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
-- Count the total number of affiliations per university
SELECT ___(*), professors.university_id
FROM ___
JOIN ___
ON affiliations.professor_id = professors.id
-- Group by the university ids of professors
GROUP BY professors.___
___ ___ count DESC;