# Session Five: Checkin | Banco de Dados
[toc]
## Agrupamento de Registros
### GROUP BY
Usa-se para agrupar registros em subgrupos baseados em colunas ou valores retornados em uma expressão.
Podendo agrupar cada produto, ou restante dos registros que selecionar.
Exemplo:
```sql=
SELECT Cidade, SUM (Quantidade) AS Total
FROM Vendas
GROUP BY Cidade;
--somou as quantidades dos produtos agrupados de cada cidade.
```
```sql=
SELECT Cidade,COUNT (*) AS Total
FROM Vendas
GROUP BY Cidade;
--Quantidade de produtos vendidos de cada cidade.
```
## Filtrando os resultados do Agrupamento
### HAVING
Clásula usada para especificar condições de filtragem em grupos de registros ou agregações, usada-se frequentimente a cláusa GROUP BY para filtar as colunas, e depois o HAVING para filtar outro registro.
```sql=
SELECT Cidade, SUM (Quantidade) AS Total
FROM Vendas
GROUP BY Cidade
HAVING SUM (Quantidade)<2500;
--Quantidade de produtos vendidos de cada cidade menor que 2500;
```
{"metaMigratedAt":"2023-06-16T01:48:23.908Z","metaMigratedFrom":"Content","title":"Session Five: Checkin | Banco de Dados","breaks":true,"contributors":"[{\"id\":\"49b19583-2153-4cca-9003-e8abd508dfd9\",\"add\":970,\"del\":17}]"}