Więcej ćwiczeń z łączeniem tabel
Możesz wykorzystać tę samą instrukcję SELECT, którą zbudowano w poprzednim ćwiczeniu – tym razem jednak zwrócimy tylko kilka kolumn i użyjemy drugiej tabeli w klauzuli group_by().
To ćwiczenie jest częścią kursu
Wprowadzenie do baz danych w Pythonie
Instrukcje do ćwiczenia
- Zbuduj instrukcję, która wybiera:
- Kolumnę
statez tabelicensus. - Sumę wartości kolumny
pop2008z tabelicensus. - Kolumnę
census_division_namez tabelistate_fact.
- Kolumnę
- Dołącz
.select_from()dostmt, aby połączyć tabelecensusistate_factpo kolumnachstateiname. - Pogrupuj instrukcję według kolumny
namez tabelistate_fact. - Wykonaj instrukcję
stmt_grouped, aby pobrać wszystkie rekordy, i zapisz wynik jakoresults. - Prześlij odpowiedź, aby przeiterować po obiekcie
resultsi wyświetlić każdy rekord.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Build a statement to select the state, sum of 2008 population and census
# division name: stmt
stmt = select([
____,
func.sum(____),
____
])
# Append select_from to join the census and state_fact tables by the census state and state_fact name columns
stmt_joined = stmt.select_from(
census.join(____, census.columns.____ == state_fact.columns.____)
)
# Append a group by for the state_fact name column
stmt_grouped = stmt_joined.group_by(____)
# Execute the statement and get the results: results
results = connection.execute(____).fetchall()
# Loop over the results object and print each record.
for record in results:
print(record)