1. 학습
  2. /
  3. 강의
  4. /
  5. Pythonで学ぶデータベース入門

Connected

연습 문제

テーブルから選択したデータをフィルタする - 式

標準的な Python の比較演算子に加えて、in_() のようなメソッドを使って、より強力な where() 句を作成できます。利用可能な式の一覧は、SQLAlchemy Documentationで確認できます。

in_() メソッドは列に対して使うと、その列の値が指定した候補リストのいずれかに含まれるレコードだけを取り込めます。例えば、where(census.columns.age.in_([20, 30, 40])) は、年齢がちょうど 20、30、または 40 歳の人のレコードだけを返します。

この演習では、引き続き census テーブルを使い、人口密度が最も高い 3 州の人々のレコードを選択します。これらの州のリストはすでに用意されています。

지침

100 XP
  • census テーブルからすべてのレコードを選択します。
  • where 句の引数を修正し、in_() を使って、census.columns.state 列の値が states リストに含まれるすべてのレコードを返すようにします。
  • ResultProxy connection.execute(stmt) をループし、各レコードの state 列と pop2000 列を出力します。