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

Cập nhật tương quan (Correlated updates)

Bạn cũng có thể cập nhật bản ghi bằng dữ liệu từ một câu lệnh select. Cách này được gọi là cập nhật tương quan (correlated update). Cơ chế hoạt động là bạn định nghĩa một câu lệnh select trả về giá trị bạn muốn dùng để cập nhật bản ghi và gán chính câu lệnh select đó làm giá trị trong update.

Trong bài này, bạn sẽ dùng flat_census làm bảng đích cho cập nhật tương quan. Bảng flat_census là bản tóm tắt từ bảng census của bạn, và đặc biệt có chứa các cột fips_state.

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

  • Tạo một câu lệnh chọn cột name từ state_fact. Lưu câu lệnh này là fips_stmt.
  • Thêm mệnh đề where vào fips_stmt để khớp fips_state từ bảng state_fact với fips_code trong bảng flat_census.
  • Tạo một câu lệnh update để đặt state_name trong flat_census bằng fips_stmt. Lưu câu lệnh này là update_stmt.
  • Gửi câu trả lời để thực thi update_stmt, lưu results và in rowcount của results.

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 a statement to select name from state_fact: fips_stmt
fips_stmt = select([____])

# Append a where clause to match the fips_state to flat_census fips_code: fips_stmt
fips_stmt = fips_stmt.____(
    ____ == ____)

# Build an update statement to set the name to fips_stmt_where: update_stmt
update_stmt = update(____).values(____=____)

# Execute update_stmt: results
results = connection.execute(update_stmt)

# Print rowcount
print(results.rowcount)
Chỉnh sửa và Chạy Mã