Automatiska joins med en etablerad relation
Om du har två tabeller med en redan etablerad relation kan du använda den relationen automatiskt – du behöver bara lägga till kolumnerna du vill hämta från respektive tabell i select-satsen. Kom ihåg att Jason konstruerade följande fråga:
stmt = select([census.columns.pop2008, state_fact.columns.abbreviation])
för att joina tabellerna census och state_fact och välja kolumnen pop2008 från den första och kolumnen abbreviation från den andra. I det här fallet hade tabellerna census och state_fact en fördefinierad relation: kolumnen state i den förra motsvarade kolumnen name i den senare.
I den här övningen använder du samma fördefinierade relation för att välja kolumnerna pop2000 och abbreviation!
Den här övningen är en del av kursen
Introduktion till databaser i Python
Övningsinstruktioner
- Bygg en sats som joinar tabellerna
censusochstate_factoch väljer kolumnenpop2000från den första och kolumnenabbreviationfrån den andra. - Kör satsen för att hämta det första resultatet och spara det som
result. - Skicka in svaret för att loopa igenom nycklarna i resultatobjektet och skriv ut nyckeln och värdet för var och en!
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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))