Automatische joins met een bestaande relatie
Als je twee tabellen hebt die al een bestaande relatie hebben, kun je die relatie automatisch gebruiken door simpelweg de kolommen die je wilt uit elke tabel toe te voegen aan de select-statement. Herinner je dat Jason de volgende query opstelde:
stmt = select([census.columns.pop2008, state_fact.columns.abbreviation])
om de tabellen census en state_fact te joinen en de kolom pop2008 uit de eerste en de kolom abbreviation uit de tweede te selecteren. In dit geval hadden de tabellen census en state_fact een vooraf gedefinieerde relatie: de kolom state van de eerste kwam overeen met de kolom name van de tweede.
In deze oefening gebruik je dezelfde vooraf gedefinieerde relatie om de kolommen pop2000 en abbreviation te selecteren!
Deze oefening maakt deel uit van de cursus
Introductie tot databases in Python
Oefeninstructies
- Bouw een statement om de tabellen
censusenstate_factte joinen en selecteer de kolompop2000uit de eerste en de kolomabbreviationuit de tweede. - Voer het statement uit om het eerste resultaat op te halen en sla dit op als
result. - Verzamel je antwoord om over de keys van het result-object te loopen, en print voor elke key de key en de value!
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Build a statement to join census and state_fact tables: stmt
stmt = select([____, ____])
# Execute the statement and get the first result: result
result = connection.execute(____).first()
# Loop over the keys in the result object and print the key and value
for key in result.keys():
print(key, getattr(result, key))