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

Lọc dữ liệu chọn từ một Table - Biểu thức

Bên cạnh các toán tử so sánh chuẩn của Python, bạn cũng có thể dùng các phương thức như in_() để tạo các mệnh đề where() mạnh hơn. Bạn có thể xem danh sách đầy đủ các biểu thức trong Tài liệu SQLAlchemy.

Phương thức in_(), khi dùng trên một cột, cho phép chọn các bản ghi mà giá trị của cột nằm trong một danh sách giá trị cho trước. Ví dụ, where(census.columns.age.in_([20, 30, 40])) sẽ chỉ trả về các bản ghi của những người đúng 20, 30, hoặc 40 tuổi.

Trong bài tập này, bạn sẽ tiếp tục làm việc với bảng census, và chọn các bản ghi của những người đến từ ba bang có mật độ dân số cao nhất. Danh sách các bang đó đã được tạo sẵn cho bạn.

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

  • Chọn tất cả bản ghi từ bảng census.
  • Sửa đối số của mệnh đề where để dùng in_() và trả về mọi bản ghi mà giá trị trong cột census.columns.state nằm trong danh sách states.
  • Lặp qua ResultProxy connection.execute(stmt) và in các cột statepop2000 của mỗi bản ghi.

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.

# Define a list of states for which we want results
states = ['New York', 'California', 'Texas']

# Create a query for the census table: stmt
stmt = select(____)

# Append a where clause to match all the states in_ the list states
stmt = stmt.where(____)

# Loop over the ResultProxy and print the state and its population in 2000
for ____ in connection.execute(____):
    print(____, ____)
Chỉnh sửa và Chạy Mã