始める無料で始める

単一列を降順で並べ替える

列を desc() 関数で包むことで、.order_by() を使って高い順から低い順(降順)に並べ替えることもできます。ここではこの関数の実例はまだ見ていませんが、これまで学んだ内容を一般化したものです。

並べ替えたい列名を指定して、.order_by() の中に desc()(descending の略)を渡します。例えば、 stmt.order_by(desc(table.columns.column_name))column_name を降順に並べ替えます。

この演習はコースの一部です

Pythonで学ぶデータベース入門

コースを見る

演習の手順

  • sqlalchemy モジュールから desc をインポートします。
  • census テーブルの state 列の全レコードを選択します。
  • 結果を state 列で降順に並べ替えるように .order_by() を追加し、結果を rev_stmt として保存します。
  • connection.execute() を使って rev_stmt を実行し、.fetchall() ですべての結果を取得して rev_results に保存します。
  • rev_results の先頭10行を出力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Import desc
from ____ import ____

# Build a query to select the state column: stmt
stmt = ____

# Order stmt by state in descending order: rev_stmt
rev_stmt = stmt.order_by(____)

# Execute the query and store the results: rev_results
rev_results = ____

# Print the first 10 rev_results
print(____)
コードを編集して実行