Počet záznamů podle státu
Často potřebujeme zjistit počet záznamů pro každou hodnotu v určitém sloupci. Právě k tomu slouží metoda .group_by(). Můžeš jí předat sloupec a použít ho spolu s agregační funkcí jako sum() nebo count().
Podobně jako .order_by() i .group_by() přijímá více sloupců jako argumenty.
Toto cvičení je součástí kurzu
Introduction to Databases in Python
Pokyny k cvičení
- Importuj
funczsqlalchemy. - Sestav příkaz
select, který získá hodnoty sloupce state a počet hodnot ve sloupciage, a ulož ho jakostmt. - Použij metodu
.group_by()k seskupení příkazu podle sloupcestate. - Spusť
stmtpomocíconnection, získej počty a výsledky ulož jakoresults. - Vypiš názvy klíčů/sloupců vrácených výsledků pomocí
results[0].keys().
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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(____)