Die Stärke von SQL liegt in den Beziehungen zwischen den Tabellen: INNER JOIN
Nun führst du deinen ersten INNER JOIN
durch! Du wirst mit deiner Lieblings-SQLite-Datenbank arbeiten, Chinook.sqlite
. Für jeden Datensatz in der Tabelle Album
extrahierst du den Title
zusammen mit dem Name
des Artist
. Letztere stammen aus der Tabelle Artist
. Daher musst du diese beiden Tabellen über die Spalte ArtistID
per INNER JOIN
verbinden.
Erinnere dich daran, dass Hugo für den INNER JOIN
die Tabellen Orders
und Customers
aus der Northwind-Datenbank mit der folgenden SQL-Abfrage aufgerufen hat:
"SELECT OrderID, CompanyName FROM Orders INNER JOIN Customers on Orders.CustomerID = Customers.CustomerID"
Der folgende Code wurde bereits ausgeführt, um die notwendigen Pakete zu importieren und die Engine zu erstellen:
import pandas as pd
from sqlalchemy import create_engine
engine = create_engine('sqlite:///Chinook.sqlite')
Diese Übung ist Teil des Kurses
Einführung in das Importieren von Daten in Python
Anleitung zur Übung
- Weise
rs
die Ergebnisse der folgenden Abfrage zu: Wähle alle Datensätze aus und extrahiere denTitle
des Datensatzes undName
des Interpreten jedes Datensatzes aus der TabelleAlbum
bzw. der TabelleArtist
. Dazu musst du diese beiden Tabellen perINNER JOIN
über die SpalteArtistID
verbinden. - Bei einem Aufruf von
pd.DataFrame()
wendest du die Methodefetchall()
aufrs
an, um alle Datensätze inrs
heranzuholen. Speichere sie in dem DataFramedf
. - Setze die Spaltennamen des DataFrames auf die entsprechenden Namen der Tabellenspalten.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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())