Automatyczne złączenia przy istniejącej relacji
Jeśli dwie tabele mają już zdefiniowaną relację, możesz z niej skorzystać automatycznie – wystarczy dodać odpowiednie kolumny z każdej tabeli do instrukcji select. Przypomnij sobie, że Jason zbudował następujące zapytanie:
stmt = select([census.columns.pop2008, state_fact.columns.abbreviation])
aby złączyć tabele census i state_fact oraz wybrać kolumnę pop2008 z pierwszej i kolumnę abbreviation z drugiej. W tym przypadku tabele census i state_fact miały predefiniowaną relację: kolumna state w pierwszej tabeli odpowiadała kolumnie name w drugiej.
W tym ćwiczeniu skorzystasz z tej samej predefiniowanej relacji, aby wybrać kolumny pop2000 i abbreviation!
To ćwiczenie jest częścią kursu
Wprowadzenie do baz danych w Pythonie
Instrukcje do ćwiczenia
- Zbuduj instrukcję, która złączy tabele
censusistate_factoraz wybierze kolumnępop2000z pierwszej i kolumnęabbreviationz drugiej. - Wykonaj instrukcję, aby pobrać pierwszy wynik, i zapisz go jako
result. - Prześlij odpowiedź, aby przejść przez klucze obiektu wynikowego i wyświetlić każdy klucz wraz z jego wartością!
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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))