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

Korelované aktualizace

Záznamy lze aktualizovat také pomocí dat z příkazu select. Tento přístup se nazývá korelovaná aktualizace. Funguje tak, že definuješ příkaz select, který vrátí hodnotu, kterou chceš do záznamu zapsat, a tento příkaz pak předáš jako hodnotu do update.

V tomto cvičení použiješ tabulku flat_census jako cíl korelované aktualizace. Tabulka flat_census je zjednodušená kopie tabulky census a obsahuje mimo jiné sloupec fips_state.

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

Introduction to Databases in Python

Zobrazit kurz

Pokyny k cvičení

  • Sestavte příkaz pro výběr sloupce name z tabulky state_fact. Ulož příkaz do proměnné fips_stmt.
  • Přidej ke fips_stmt klauzuli where, která propojí sloupec fips_state z tabulky state_fact se sloupcem fips_code v tabulce flat_census.
  • Sestavte příkaz pro aktualizaci, který nastaví hodnotu state_name v tabulce flat_census na fips_stmt. Ulož příkaz do proměnné update_stmt.
  • Odešli odpověď, aby se update_stmt provedl, ulož výsledky do results a vypiš hodnotu rowcount z results.

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 name from state_fact: fips_stmt
fips_stmt = select([____])

# Append a where clause to match the fips_state to flat_census fips_code: fips_stmt
fips_stmt = fips_stmt.____(
    ____ == ____)

# Build an update statement to set the name to fips_stmt_where: update_stmt
update_stmt = update(____).values(____=____)

# Execute update_stmt: results
results = connection.execute(update_stmt)

# Print rowcount
print(results.rowcount)
Upravit a spustit kód