Začněte nyníZačněte zdarma

Síla SQL tkví ve vztazích mezi tabulkami: INNER JOIN

V tomto cvičení provedeš svůj první INNER JOIN! Budeš pracovat se svou oblíbenou SQLite databází Chinook.sqlite. Pro každý záznam v tabulce Album extrahuješ Title spolu s Name příslušného Artist. Jméno umělce pochází z tabulky Artist, takže budeš muset tyto dvě tabulky propojit pomocí INNER JOIN na sloupci ArtistID.

Připomeň si, jak Hugo provedl INNER JOIN tabulek Orders a Customers z databáze Northwind pomocí tohoto SQL dotazu:

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

Následující kód už byl spuštěn – importuje potřebné balíčky a vytváří engine:

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

Toto cvičení je součástí kurzu

Úvod do importu dat v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Do proměnné rs ulož výsledky následujícího dotazu: vyber všechny záznamy, přičemž z tabulky Album extrahuj Title a z tabulky Artist extrahuj Name příslušného umělce. K tomu propoj obě tabulky pomocí INNER JOIN na sloupci ArtistID.
  • V rámci volání pd.DataFrame() zavolej na rs metodu fetchall(), která načte všechny záznamy z rs. Výsledek ulož do DataFrame df.
  • Nastav názvy sloupců DataFrame na odpovídající názvy sloupců z tabulek.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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())
Upravit a spustit kód