Filtrera data från en tabell – enkelt exempel
Nu när du är ansluten till databasen är det dags att öva på att filtrera dina frågor!
Som nämndes i videon används en where()-sats för att filtrera de data som en sats returnerar. Om du till exempel vill välja alla poster från tabellen census där kön är kvinna (eller 'F') skriver du så här:
select([census]).where(census.columns.sex == 'F')
Förutom == kan du använda i stort sett alla Pythons jämförelseoperatorer (till exempel <=, != och så vidare) i where()-satsen.
Den här övningen är en del av kursen
Introduktion till databaser i Python
Övningsinstruktioner
- Välj alla poster från tabellen
censusgenom att skickacensussom en lista tillselect(). - Lägg till en
where-sats tillstmtför att bara returnera poster därstateär'New York'. - Kör satsen
stmtmed.execute()påconnectionoch hämta resultaten med.fetchall(). - Iterera över
resultsoch skriv ut kolumnernaage,sexochpop2000från varje post. Du kan till exempel skriva utageförresultmedresult.age.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Create a select query: stmt
stmt = ____
# Add a where clause to filter the results to only those for New York : stmt_filtered
stmt = stmt.____
# Execute the query to retrieve all the data returned: results
results = ____
# Loop over the results and print the age, sex, and pop2000
for ___ in ____:
print(result.age, ____, ____)