Aan de slagGa gratis aan de slag

Je databaserecords filteren met SQL's WHERE

Je kunt nu een basis-SQL-query uitvoeren om records uit elke tabel in je database te selecteren en je kunt ook eenvoudige aanpassingen doen om bepaalde kolommen en aantallen rijen te kiezen.

Er zijn nog een paar standaard SQL-vaardigheden die je helpen op weg naar SQL-ninja.

Stel dat je alle records uit de Customer-tabel van de Chinook-database wilt waarvoor Country 'Canada' is. Dit gaat heel eenvoudig in SQL met een SELECT-statement gevolgd door een WHERE-clausule, zoals hieronder:

SELECT * FROM Customer WHERE Country = 'Canada'

Je kunt in feite elke SELECT-query filteren op elke voorwaarde met een WHERE-clausule. Dit heet je records filteren.

In deze interactieve oefening selecteer je alle records uit de Employee-tabel waarvoor 'EmployeeId' groter dan of gelijk aan 6 is.

Packages zijn alvast geïmporteerd als volgt:

import pandas as pd
from sqlalchemy import create_engine

Aan de slag met query's!

Deze oefening maakt deel uit van de cursus

Introductie tot data importeren in Python

Cursus bekijken

Oefeninstructies

  • Vul het argument van create_engine() aan zodat de engine voor de SQLite-database 'Chinook.sqlite' wordt aangemaakt.
  • Voer de query uit die alle records selecteert uit de Employee-tabel waar 'EmployeeId' groter dan of gelijk aan 6 is. Gebruik de >=-operator en sla de resultaten op in rs.
  • Pas de methode fetchall() toe op rs om alle records in rs op te halen. Sla ze op in de DataFrame df.
  • Gebruik het rs-object om de kolomnamen van de DataFrame in te stellen op de overeenkomstige kolomnamen van de tabel.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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())
Code bewerken en uitvoeren