Agrupamento – Parte 2
Parte da seção Fundamentos do Journey de SQL da Coddy. Lição 37 de 72.
A palavra-chave WHERE executa uma condição separadamente em cada registro. Por exemplo:
SELECT * FROM table1
WHERE col1 > col2col1 > col2 será executado em todos os registros e verificará se a condição foi atendida.
Mas e se quisermos filtrar resultados agregados? Por exemplo:
SELECT category, AVG(price) FROM table1
WHERE AVG(price) > 40
GROUP BY categoryIsso não funcionará porque WHERE não pode verificar agregações. Para isso, temos a palavra-chave HAVING. Ela filtra os dados pela condição agregada.
SELECT category, AVG(price) FROM table1
GROUP BY category
HAVING AVG(price) > 40Isso filtrará todas as categorias cujo preço médio seja maior que 40.
Se quisermos combinar as cláusulas HAVING e WHERE, escreveremos:
SELECT category, AVG(price) FROM table1
WHERE price > 25
GROUP BY category
HAVING AVG(price) > 40Isso primeiro percorrerá registro por registro e filtrará todos os registros cujo preço seja maior que 25, e somente depois executará a cláusula GROUP BY e filtrará cada categoria cuja média de preço seja maior que 40.
Desafio
MédioTabelas e colunas disponíveis:
earthquakes:location,amplitude,period
A escala Richter é uma escala logarítmica usada para medir a magnitude dos terremotos.
Precisamos retornar a magnitude média para cada localização de todos os terremotos de grande magnitude
Um terremoto de grande magnitude é definido como:
- A amplitude é maior ou igual a 1
- O período das ondas é maior ou igual a 1 minuto
Para este desafio, usaremos uma fórmula diferente: M = (A/T)<sup>2</sup> / T, que é equivalente a M = ((A/T)*(A/T)) / T.
Retorne a localização e a magnitude média de cada localização, incluindo apenas os terremotos de grande magnitude (dê à coluna o nome avg_magnitude). Inclua no resultado apenas as localizações onde a avg_magnitude é maior que 1
Arredonde os resultados para 2 casas decimais
Experimente você mesmo
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Mais palavras-chave
A palavra-chave INA palavra-chave BETWEENA palavra-chave LIKEA palavra-chave ASRecapitulação - Modelos de celulares2Condições
Noções básicas de condiçõesA palavra-chave ANDA palavra-chave ORA palavra-chave NOTCombinação de várias condiçõesParêntesesBooleanos3Formato de retorno específico
Valores nulosOrdenar resultados - Parte 1Ordenar resultados - Parte 2Recapitulação - Empresa de segurança cibernéticaLimitar o número de registrosRecapitulação - Fábrica de veículos6Desafios introdutórios
Revisão - Eleição parlamentarRevisão - Prisão criminal pela políciaRevisão - Recipiente de bebidas de barRevisão - Projetar novas colunasPratique por conta própria: Playground de SQL