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のすべてのレコードを取得します。それらを DataFramedfに格納します。- 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())