Numărul de înregistrări pe stat
De multe ori vrem să obținem un număr de înregistrări pentru fiecare valoare dintr-o altă coloană. Metoda .group_by() ajută la răspunsul la acest tip de interogare. Poți transmite o coloană metodei .group_by() și să o folosești cu o funcție agregată, precum sum() sau count(). La fel ca metoda .order_by(), .group_by() poate accepta mai multe coloane ca argumente.
Acest exercițiu face parte din cursul
Introducere în baze de date în Python
Instrucțiuni pentru exercițiu
- Importă
funcdinsqlalchemy. - Construiește o instrucțiune
selectpentru a obține valoarea câmpului de stat și numărul valorilor din câmpulage, și stocheaz-o castmt. - Folosește metoda
.group_by()pentru a grupa instrucțiunea după coloanastate. - Execută
stmtfolosindconnectionpentru a obține numărul și stochează rezultatele caresults. - Afișează cheile/numele coloanelor din rezultatele returnate folosind
results[0].keys().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(____)