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

การ Pivot พร้อม Ranking

เป้าหมายคือสร้างตารางที่อ่านง่าย แสดงการจัดอันดับของ 3 ประเทศที่มีประชากรมากที่สุดในสหภาพยุโรป โดยอิงจากจำนวนเหรียญทองที่ได้รับในโอลิมปิกระหว่างปี 2004 ถึง 2012 ตารางต้องอยู่ในรูปแบบนี้:

| Country | 2004 | 2008 | 2012 |
|---------|------|------|------|
| FRA     | ...  | ...  | ...  |
| GBR     | ...  | ...  | ...  |
| GER     | ...  | ...  | ...  |

ต้องนับจำนวนเหรียญทองของแต่ละประเทศ จัดอันดับตามจำนวนเหรียญ แล้วจึง pivot ตารางให้ได้รูปแบบดังกล่าว

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

PostgreSQL Summary Stats and Window Functions

ดูคอร์ส

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

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

-- Count the gold medals per country and year
SELECT
  ___,
  ___,
  ___ AS Awards
FROM Summer_Medals
WHERE
  Country IN ('FRA', 'GBR', 'GER')
  AND Year IN (2004, 2008, 2012)
  AND Medal = 'Gold'
GROUP BY ___, ___
ORDER BY Country ASC, Year ASC
แก้ไขและรันโค้ด