Conteo de registros por estado
A menudo queremos obtener un conteo para cada registro que tiene un valor concreto en otra columna. El método .group_by() ayuda a responder este tipo de consulta. Puedes pasar una columna al método .group_by() y usarla en una función de agregación como sum() o count(). Al igual que el método .order_by(), .group_by() puede aceptar varias columnas como argumentos.
Este ejercicio forma parte del curso
Introducción a las bases de datos en Python
Instrucciones del ejercicio
- Importa
funcdesqlalchemy. - Construye una sentencia
selectpara obtener el valor del campostatey un conteo de los valores en el campoage, y guárdala comostmt. - Usa el método
.group_by()para agrupar la sentencia por la columnastate. - Ejecuta
stmtusandoconnectionpara obtener el conteo y guarda los resultados comoresults. - Imprime las claves/nombres de columna de los resultados devueltos usando
results[0].keys().
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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(____)