SQLクエリのカスタマイズ
最初の SQL クエリの実行、おめでとうございます!次は、クエリをカスタマイズする方法を学びましょう。具体的には、以下の操作を行います。
- テーブルから特定の列を選択する
- 取得する行数を指定する
- データベーステーブルから列名をインポートする
動画で行われたクエリのカスタマイズを思い出してみましょう。
engine = create_engine('sqlite:///Northwind.sqlite')
with engine.connect() as con:
rs = con.execute("SELECT OrderID, OrderDate, ShipName FROM Orders")
df = pd.DataFrame(rs.fetchmany(size=5))
df.columns = rs.keys()
以下のパッケージはすでにインポートされています。
from sqlalchemy import create_engine
import pandas as pd
エンジンもすでに作成されています。
engine = create_engine('sqlite:///Chinook.sqlite')
エンジンの接続は、次の文ですでに開かれています。
with engine.connect() as con:
完成させるべきコードはすべて、このコンテキストの中にあります。
この演習はコースの一部です
Python でのデータインポート入門
演習の手順
- SQLクエリを実行して、列
LastNameとTitleをテーブルEmployeeから 選択します。結果を変数rsに格納します。 - メソッド
fetchmany()をrsに適用して、レコードのうち3件を取得します。それらをDataFramedfに格納します。 rsオブジェクトを使用して、DataFrameの列名をテーブル列の対応する名前に設定します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Open engine in context manager
# Perform query and save results to DataFrame: df
with engine.connect() as con:
rs = ____
df = pd.DataFrame(____)
df.columns = ____
# Print the length of the DataFrame df
print(len(df))
# Print the head of the DataFrame df
print(df.head())