開始使用免費開始

SQL 的威力在於資料表之間的關係:INNER JOIN

在這裡,你要進行第一個 INNER JOIN!你會使用熟悉的 SQLite 資料庫 Chinook.sqlite。對於 Album 資料表中的每一筆紀錄,你將取出該筆的 Title,以及其對應藝人的 Name。後者來自 Artist 資料表,因此你需要在兩個資料表的 ArtistID 欄位上進行 INNER JOIN

回想一下,要在 Northwind 資料庫中對 OrdersCustomers 進行 INNER JOIN,Hugo 執行了以下 SQL 查詢:

"SELECT OrderID, CompanyName FROM Orders INNER JOIN Customers on Orders.CustomerID = Customers.CustomerID"

以下程式碼已經執行,完成必要套件的匯入並建立引擎:

import pandas as pd
from sqlalchemy import create_engine
engine = create_engine('sqlite:///Chinook.sqlite')

本練習屬於課程

Python 資料匯入入門

檢視課程

練習說明

  • 將下列查詢的結果指定給 rs選取 所有紀錄,分別從 AlbumArtist 資料表取出每筆紀錄的 Title 與藝人的 Name。為了達成這點,請在兩個資料表的 ArtistID 欄位上進行 INNER JOIN
  • 呼叫 pd.DataFrame() 時,對 rs 使用 fetchall() 方法以擷取 rs 中的所有紀錄,並把結果儲存到 DataFrame df
  • 將 DataFrame 的欄名設定為對應到資料表欄位的名稱。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Open engine in context manager
# Perform query and save results to DataFrame: df
with engine.connect() as con:
    ____
    ____
    ____

# Print head of DataFrame df
print(df.head())
編輯並執行程式碼