Deine Datenbankeinträge mit SQL WHERE filtern
Du kannst jetzt eine einfache SQL-Abfrage ausführen, um Datensätze aus einer beliebigen Tabelle in deiner Datenbank auszuwählen. Du kannst außerdem einfache Abfrageanpassungen vornehmen, um bestimmte Spalten und Zeilenzahlen auszuwählen.
Es gibt noch ein paar weitere SQL-Standardabfragen, die dir auf deinem Weg zum SQL-Profi helfen werden.
Nehmen wir an, du möchtest alle Datensätze aus der Tabelle Customer
der Chinook-Datenbank abrufen, für die Country
den Wert 'Canada'
hat. In SQL kannst du dies ganz einfach mit einer SELECT
-Anweisung, gefolgt von einer WHERE
-Klausel, wie folgt erreichen:
SELECT * FROM Customer WHERE Country = 'Canada'
Du kannst sogar jede SELECT
-Anweisung nach jeder Bedingung filtern, indem du eine WHERE
-Klausel verwendest. Das nennt man Filtern deiner Datensätze.
In dieser interaktiven Übung wählst du alle Datensätze der Tabelle Employee
aus, bei denen 'EmployeeId'
größer oder gleich 6
ist.
Die Pakete sind bereits wie folgt importiert:
import pandas as pd
from sqlalchemy import create_engine
Leg los mit deinen Abfragen!
Diese Übung ist Teil des Kurses
Einführung in das Importieren von Daten in Python
Anleitung zur Übung
- Vervollständige das Argument von
create_engine()
, damit die Engine für die SQLite-Datenbank'Chinook.sqlite'
erstellt wird. - Führe die Abfrage aus, die alle Datensätze aus der Tabelle
Employee
auswählt , bei denen'EmployeeId'
größer oder gleich6
ist. Verwende den Operator>=
und weise die Ergebnissers
zu. - Wende die Methode
fetchall()
aufrs
an, um alle Datensätze inrs
heranzuholen. Speichere sie in dem DataFramedf
. - Setze mit dem Objekt
rs
die Spaltennamen des DataFrames auf die entsprechenden Namen der Tabellenspalten.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Create engine: engine
engine = create_engine(____)
# Open engine in context manager
# Perform query and save results to DataFrame: df
with engine.connect() as con:
rs = con.execute(____)
df = pd.DataFrame(____)
df.columns = ____
# Print the head of the DataFrame df
print(df.head())