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

นับจำนวนระเบียนตามรัฐ

บ่อยครั้งที่เราต้องการนับจำนวนระเบียนที่มีค่าเฉพาะเจาะจงในคอลัมน์อื่น เมธอด .group_by() ช่วยตอบคำถามประเภทนี้ได้ โดยสามารถส่งคอลัมน์เข้าไปใน .group_by() แล้วใช้ร่วมกับฟังก์ชัน aggregate เช่น sum() หรือ count() เช่นเดียวกับเมธอด .order_by() .group_by() รับคอลัมน์ได้หลายคอลัมน์เป็น argument

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

Python เบื้องต้นสำหรับฐานข้อมูล

ดูคอร์ส

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

  • นำเข้า func จาก sqlalchemy
  • สร้างคำสั่ง select เพื่อดึงค่าของฟิลด์ state และนับจำนวนค่าในฟิลด์ age แล้วเก็บไว้ใน stmt
  • ใช้เมธอด .group_by() เพื่อจัดกลุ่มคำสั่งตามคอลัมน์ state
  • รัน stmt ผ่าน connection เพื่อดึงผลการนับ แล้วเก็บผลลัพธ์ไว้ใน results
  • แสดง key หรือชื่อคอลัมน์ของผลลัพธ์โดยใช้ results[0].keys()

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

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

# Import func


# Build a query to select the state and count of ages by state: stmt
stmt = select([____, ____])

# Group stmt by state
stmt = stmt.group_by(____)

# Execute the statement and store all the records: results
results = connection.execute(____).fetchall()

# Print results
print(results)

# Print the keys/column names of the results returned
print(____)
แก้ไขและรันโค้ด