Kom igångKom igång gratis

Filtrera databasposter med SQL:s WHERE

Nu kan du köra grundläggande SQL-frågor för att hämta poster från valfri tabell i din databas, och du kan även anpassa frågorna för att välja specifika kolumner och antal rader.

Det finns ytterligare några vanliga SQL-tekniker som kommer att vara till stor nytta på din väg mot att bemästra SQL.

Säg till exempel att du vill hämta alla poster från tabellen Customer i Chinook-databasen där Country är 'Canada'. Det gör du enkelt i SQL med en SELECT-sats följd av en WHERE-klausul:

SELECT * FROM Customer WHERE Country = 'Canada'

Du kan faktiskt filtrera vilken SELECT-sats som helst med ett valfritt villkor via en WHERE-klausul. Det kallas för att filtrera dina poster.

I den här interaktiva övningen väljer du alla poster från tabellen Employee där 'EmployeeId' är större än eller lika med 6.

Paketen är redan importerade enligt följande:

import pandas as pd
from sqlalchemy import create_engine

Dags att köra frågor!

Den här övningen är en del av kursen

Introduktion till dataimport i Python

Visa kurs

Övningsinstruktioner

  • Fyll i argumentet till create_engine() så att motorn för SQLite-databasen 'Chinook.sqlite' skapas.
  • Kör frågan som väljer alla poster från tabellen Employee där 'EmployeeId' är större än eller lika med 6. Använd operatorn >= och tilldela resultaten till rs.
  • Anropa metoden fetchall()rs för att hämta alla poster i rs. Lagra dem i DataFrame:en df.
  • Använd objektet rs för att sätta DataFrame:ens kolumnnamn till motsvarande namn på tabellkolumnerna.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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())
Redigera och kör kod