SQL:s styrka ligger i relationer mellan tabeller: INNER JOIN
Nu ska du utföra din första INNER JOIN! Du kommer att arbeta med SQLite-databasen Chinook.sqlite. För varje post i tabellen Album hämtar du Title tillsammans med Name från tabellen Artist. Eftersom artistnamnet finns i en annan tabell behöver du koppla samman de två tabellerna med INNER JOIN på kolumnen ArtistID.
Kom ihåg att Hugo kopplade tabellerna Orders och Customers från Northwind-databasen med följande SQL-fråga:
"SELECT OrderID, CompanyName FROM Orders INNER JOIN Customers on Orders.CustomerID = Customers.CustomerID"
Följande kod har redan körts för att importera nödvändiga paket och skapa motorn:
import pandas as pd
from sqlalchemy import create_engine
engine = create_engine('sqlite:///Chinook.sqlite')
Den här övningen är en del av kursen
Introduktion till dataimport i Python
Övningsinstruktioner
- Tilldela
rsresultatet från följande fråga: välj alla poster och hämtaTitlefrån tabellenAlbumsamtNamefrån tabellenArtist. Koppla samman de två tabellerna medINNER JOINpå kolumnenArtistID. - Anropa metoden
fetchall()pårsinutipd.DataFrame()för att hämta alla poster irs. Spara resultatet i DataFrame:ndf. - Ange DataFramens kolumnnamn så att de matchar respektive tabellkolumns namn.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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())