Mises à jour corrélées
Vous pouvez aussi mettre à jour des enregistrements avec des données provenant d'une instruction select. On appelle cela une mise à jour corrélée. Elle fonctionne en définissant une instruction select qui retourne la valeur avec laquelle vous voulez mettre à jour l'enregistrement, puis en attribuant cette instruction comme valeur dans update.
Dans cet exercice, vous utiliserez flat_census comme cible de votre mise à jour corrélée. La table flat_census est une copie résumée de votre table du recensement et contient, entre autres, la colonne fips_state.
Cette activité fait partie du cours
Introduction aux bases de données en Python
Instructions de l’exercice
- Créez une instruction pour sélectionner la colonne
namedestate_fact. Enregistrez l'instruction dansfips_stmt. - Ajoutez une clause where à
fips_stmtqui fait correspondrefips_statede la tablestate_factavecfips_codedans la tableflat_census. - Construisez une instruction de mise à jour pour définir
state_namedansflat_censusàfips_stmt. Enregistrez l'instruction dansupdate_stmt. - Soumettez la réponse pour exécuter
update_stmt, stockez lesresultset affichez la valeurrowcountderesults.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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)