คำนวณความแตกต่างของประชากรในแต่ละรัฐระหว่างสำมะโนประชากรปี 2000 และ 2008
ในแบบฝึกหัดสุดท้ายนี้ จะได้เขียนคิวรีเพื่อคำนวณว่ารัฐใดมีการเปลี่ยนแปลงประชากรมากที่สุด โดยจำกัดผลลัพธ์ให้แสดงเฉพาะ 10 รัฐอันดับแรก
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Python เบื้องต้นสำหรับฐานข้อมูล
คำแนะนำการฝึกหัด
- สร้าง statement เพื่อ:
- เลือก
state - คำนวณผลต่างของประชากรระหว่างปี 2008 (
pop2008) และปี 2000 (pop2000)
- เลือก
- จัดกลุ่มคิวรีตาม
census.columns.stateโดยใช้เมธอด.group_by()บนstmt - เรียงลำดับตาม
'pop_change'จากมากไปน้อย โดยใช้เมธอด.order_by()ร่วมกับฟังก์ชันdesc()บน'pop_change' - จำกัดผลลัพธ์ให้เหลือเพียง
10รัฐอันดับแรก โดยใช้เมธอด.limit() - รันคิวรีและเก็บผลลัพธ์ไว้ในตัวแปร
results - แสดงชื่อรัฐและการเปลี่ยนแปลงของประชากรสำหรับแต่ละผลลัพธ์ ส่วนนี้เตรียมไว้ให้แล้ว กด ส่งคำตอบ เพื่อดูผลลัพธ์ได้เลย!
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Build query to return state name and population difference from 2008 to 2000
stmt = select([____,
(____-____).label('pop_change')
])
# Group by State
stmt = stmt.____(____)
# Order by Population Change
stmt = stmt.____(____)
# Limit to top 10
stmt = stmt.____(____)
# Use connection to execute the statement and fetch all results
results = connection.execute(____).fetchall()
# Print the state and population change for each record
for result in results:
print('{}:{}'.format(result.state, result.pop_change))