Atualizações correlacionadas
Você também pode atualizar registros com dados vindos de uma instrução select. Isso é chamado de atualização correlacionada. Funciona definindo uma instrução select que retorna o valor com o qual você quer atualizar o registro e atribuindo essa instrução de select como o valor em update.
Neste exercício, você usará flat_census como o alvo da sua atualização correlacionada. A tabela flat_census é uma cópia resumida da sua tabela de censo e contém, em particular, a coluna fips_state.
Este exercício faz parte do curso
Introdução a Bancos de Dados em Python
Instruções do exercício
- Construa uma instrução para selecionar a coluna
namedestate_fact. Salve a instrução comofips_stmt. - Acrescente uma cláusula where a
fips_stmtque combinefips_stateda tabelastate_factcomfips_codena tabelaflat_census. - Construa uma instrução de atualização para definir
state_nameemflat_censuscomofips_stmt. Salve a instrução comoupdate_stmt. - Envie a resposta para executar
update_stmt, armazene osresultse imprima orowcountderesults.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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)