Kekuatan SQL terletak pada relasi antartabel: INNER JOIN
Di sini, Anda akan melakukan INNER JOIN pertama Anda! Anda akan bekerja dengan database SQLite favorit Anda, Chinook.sqlite. Untuk setiap rekaman di tabel Album, Anda akan mengekstrak Title beserta Name dari Artist. Nilai Name berasal dari tabel Artist, sehingga Anda perlu melakukan INNER JOIN pada kedua tabel ini berdasarkan kolom ArtistID dari keduanya.
Ingat bahwa untuk melakukan INNER JOIN pada tabel Orders dan Customers dari database Northwind, Hugo menjalankan kueri SQL berikut:
"SELECT OrderID, CompanyName FROM Orders INNER JOIN Customers on Orders.CustomerID = Customers.CustomerID"
Kode berikut sudah dijalankan untuk mengimpor paket yang diperlukan dan membuat engine:
import pandas as pd
from sqlalchemy import create_engine
engine = create_engine('sqlite:///Chinook.sqlite')
Latihan ini adalah bagian dari kursus
Pengantar Mengimpor Data di Python
Petunjuk latihan
- Tetapkan ke
rshasil dari kueri berikut: select semua rekaman, mengambilTitledari rekaman danNamedari artis untuk setiap rekaman masing-masing from tabelAlbumdan tabelArtist. Untuk melakukannya,INNER JOINkedua tabel ini pada kolomArtistIDdari keduanya. - Dalam pemanggilan
pd.DataFrame(), terapkan metodefetchall()padarsuntuk mengambil semua rekaman dirs. Simpan dalam DataFramedf. - Atur nama kolom DataFrame sesuai dengan nama kolom tabel terkait.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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())