# Session Five: Checkin | SQL Autora: Isabela Silva Sousa [toc] >[color=purple]Mapa mental ![](https://i.imgur.com/6w3wOyF.png) # Agrupamento de Registros ## GROUP BY >[color=black] >- Usamos a cláusula GROUP BY para agrupar registros em subgrupos baseados em colunas ou valores retornados por uma expressão. - **Sintaxe básica** : ```sql= SELECT colunas, função_agregação() FROM tabela WHERE filtro GROUP BY colunas ``` - **Criar tabela para teste de GROUP BY** ```sql= CREATE TABLE Vendas ( ID Smallint primary key, NOME_Vendedor varchar(20), Quantidade int, Produto varchar(20), Cidade varchar (20) ); ``` ## Usando o GROUP BY ```sql= --Consulta usando agregação para obter total de vendas de mouses : SELECT Cidade, SUM (quantidade) AS TotalMouses FROM Vendas WHERE Produto = "Mouse" ``` ```sql= --Consulta totalizando as vensdas de todos os produtos por cidade: SELECT Cidade, SUM (quantidade) AS Total FROM Vendas GROUP BY Cidade; ``` >[color=black]exemplo ![](https://i.imgur.com/nZJn1dr.png) >[color=black] >- **É importante** fazer o **agrupamento**, pois caso não faça o agrupamento o resultado do seu select sai errado. # HAVING ## Filtrando resultados do agrupamento >[color=purple] >- A cláusula usada para especificar condições de filtragem em grupos de registros ou agregações. >É frequentemente usada com a cláusula GROUP BY para as colunas agrupadas. - **Sintaxe :** ```sql= SELECT colunas, função_agregação() FROM tabela WHERE filtro GROUP BY colunas HAVING filtro_agrupamento ``` ## HAVING EX.1 ```sql= --Consulta retornando total de vendas das cidades com menos de 2500 produtos: SELECT Cidade, SUM (quantidade) AS Total FROM Vendas GROUP BY Cidade HAVING SUM (quantidade) <2500; ``` ## HAVING EX.2 ```sql= --Consulta retornando total de vendas do 'teclado' das cidades com menos de 1500 teclados vendidos: SELECT Cidade, SUM (quantidade) AS Totalteclados FROM Vendas WHERE Produto = 'teclado' GROUP BY Cidade HAVING SUM (quantidade) <1500; ```
{"metaMigratedAt":"2023-06-16T02:46:16.358Z","metaMigratedFrom":"Content","title":"Session Five: Checkin | SQL","breaks":true,"contributors":"[{\"id\":\"efa8ac71-fa69-4ab5-8a89-20016d037e45\",\"add\":2050,\"del\":49}]"}
Expand menu