Bắt đầu ngayBắt đầu miễn phí

Xác định chênh lệch theo bang giữa điều tra dân số năm 2000 và 2008

Trong bài tập cuối cùng này, bạn sẽ viết một truy vấn để tính các bang có mức thay đổi dân số lớn nhất. Bạn sẽ giới hạn truy vấn để chỉ hiển thị 10 bang đứng đầu.

Bài tập này là một phần của khóa học

Nhập môn Cơ sở dữ liệu với Python

Xem khóa học

Hướng dẫn bài tập

  • Xây dựng một câu lệnh để:
    • Chọn state.
    • Tính chênh lệch dân số giữa năm 2008 (pop2008) và năm 2000 (pop2000).
  • Nhóm truy vấn theo census.columns.state bằng phương thức .group_by() trên stmt.
  • Sắp xếp theo 'pop_change' giảm dần bằng phương thức .order_by() với hàm desc() trên 'pop_change'.
  • Giới hạn truy vấn còn 10 bang đứng đầu bằng phương thức .limit().
  • Thực thi truy vấn và lưu lại vào results.
  • In ra bang và mức thay đổi dân số cho mỗi kết quả. Phần này đã được làm sẵn, nên hãy Gửi câu trả lời để xem kết quả!

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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))
Chỉnh sửa và Chạy Mã