CommencerCommencer gratuitement

Compter les enregistrements par État

Il est souvent utile d’obtenir un décompte pour chaque enregistrement ayant une valeur particulière dans une autre colonne. La méthode .group_by() permet de répondre à ce type de requête. Vous pouvez passer une colonne à .group_by() et l’utiliser dans une fonction d’agrégation comme sum() ou count(). Comme pour .order_by(), .group_by() peut prendre plusieurs colonnes en arguments.

Cet exercice fait partie du cours

Introduction aux bases de données en Python

Afficher le cours

Instructions

  • Importez func depuis sqlalchemy.
  • Construisez une instruction select pour obtenir la valeur du champ d’État et le nombre de valeurs dans le champ age, et enregistrez-la dans stmt.
  • Utilisez la méthode .group_by() pour regrouper l’instruction par la colonne state.
  • Exécutez stmt à l’aide de connection pour obtenir le décompte et stockez les résultats dans results.
  • Affichez les clés/noms de colonnes des résultats renvoyés avec results[0].keys().

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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(____)
Modifier et exécuter le code