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
Employeeauswählt , bei denen'EmployeeId'größer oder gleich6ist. Verwende den Operator>=und weise die Ergebnisserszu. - Wende die Methode
fetchall()aufrsan, um alle Datensätze inrsheranzuholen. Speichere sie in dem DataFramedf. - Setze mit dem Objekt
rsdie Spaltennamen des DataFrames auf die entsprechenden Namen der Tabellenspalten.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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())