Mer övning med joins
Du kan använda samma SELECT-sats som du byggde i förra övningen, men den här gången lägger vi till en variation: returnera bara några kolumner och använd den andra tabellen i en group_by()-sats.
Den här övningen är en del av kursen
Introduktion till databaser i Python
Övningsinstruktioner
- Bygg en sats för att välja:
- Kolumnen
statefrån tabellencensus. - Summan av kolumnen
pop2008från tabellencensus. - Kolumnen
census_division_namefrån tabellenstate_fact.
- Kolumnen
- Lägg till
.select_from()påstmtför att joina tabellernacensusochstate_factvia kolumnernastateochname. - Gruppera satsen efter kolumnen
namei tabellenstate_fact. - Kör satsen
stmt_groupedför att hämta alla poster och spara resultatet somresults. - Skicka in svaret för att loopa igenom objektet
resultsoch skriva ut varje post.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)