Contagem de registros por estado
Muitas vezes, queremos obter uma contagem para cada registro com um determinado valor em outra coluna. O método .group_by() ajuda a responder esse tipo de consulta. Você pode passar uma coluna para o método .group_by() e usá-la em uma função de agregação como sum() ou count(). Assim como o método .order_by(), .group_by() pode receber várias colunas como argumentos.
Este exercício faz parte do curso
Introdução a Bancos de Dados em Python
Instruções do exercício
- Importe
funcdesqlalchemy. - Construa uma instrução
selectpara obter o valor do campo state e uma contagem dos valores no campoage, e armazene-a comostmt. - Use o método
.group_by()para agrupar a instrução pela colunastate. - Execute
stmtusando aconnectionpara obter a contagem e armazene os resultados comoresults. - Imprima as chaves/nomes das colunas dos resultados retornados usando
results[0].keys().
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Import func
# Build a query to select the state and count of ages by state: stmt
stmt = select([____, ____])
# Group stmt by state
stmt = stmt.group_by(____)
# Execute the statement and store all the records: results
results = connection.execute(____).fetchall()
# Print results
print(results)
# Print the keys/column names of the results returned
print(____)