Začněte nyníZačněte zdarma

Další procvičování joinů

Můžeš použít stejný příkaz SELECT jako v předchozím cvičení, ale tentokrát přidáme malý záludný prvek – vrátíme jen vybrané sloupce a druhou tabulku použijeme v klauzuli group_by().

Toto cvičení je součástí kurzu

Introduction to Databases in Python

Zobrazit kurz

Pokyny k cvičení

  • Sestav příkaz pro výběr:
    • Sloupce state z tabulky census.
    • Součtu sloupce pop2008 z tabulky census.
    • Sloupce census_division_name z tabulky state_fact.
  • Přidej k příkazu stmt metodu .select_from(), která propojí tabulky census a state_fact podle sloupců state a name.
  • Seskup příkaz podle sloupce name z tabulky state_fact.
  • Spusť příkaz stmt_grouped, získej všechny záznamy a výsledek ulož do proměnné results.
  • Odešli odpověď, aby se spustila smyčka přes objekt results a každý záznam se vypsal.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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)
Upravit a spustit kód