始める無料で始める

ORDER BY を使った SQL レコードの並べ替え

SQL クエリの結果を並べ替えることもできます。たとえば、Chinook データベースの Customer テーブルからすべてのレコードを取得し、SupportRepId 列の値で昇順に並べ替えるには、次のクエリを使います。

"SELECT * FROM Customer ORDER BY SupportRepId"

このように、SELECT 文では任意の列を基準に並べ替えが可能です。

この演習では、Employee テーブルからすべてのレコードを取得し、BirthDate 列で昇順に並べ替えましょう。

パッケージはあらかじめ次のようにインポートされています。

import pandas as pd
from sqlalchemy import create_engine

クエリを実行しましょう!

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

Python でのデータインポート入門

コースを見る

演習の手順

  • 関数 create_engine() を使用して、SQLite データベース Chinook.sqlite 用のエンジンを作成し、変数 engine に代入します。
  • コンテキストマネージャー内で、Employee テーブルから すべて のレコードを選択し、列 BirthDate 昇順に並べ替えるクエリを実行します。結果は rs に代入します。
  • pd.DataFrame() の呼び出しで、fetchall() メソッドを rs に適用して rs のすべてのレコードを取得します。それらを DataFrame df に格納します。
  • DataFrame の列名を、テーブルの列名に対応する名前に設定します。

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

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

# Create engine: engine


# Open engine in context manager
with engine.connect() as con:
    rs = ____
    df = ____

    # Set the DataFrame's column names


# Print head of DataFrame
print(df.head())
コードを編集して実行