Agregação integrada – Parte 2
Parte da seção Fundamentos do Journey de SQL da Coddy. Lição 35 de 72.
Às vezes, precisamos usar funções de agregação de maneiras mais complexas, como comparar cada linha com um valor agregado. É nesse ponto que as consultas aninhadas são úteis.
Quando você quer realizar cálculos que combinem linhas individuais com valores agregados, precisa usar uma consulta aninhada. Veja por quê:
Isso não fornecerá o resultado por linha que você deseja:
SELECT value + MIN(value)
FROM table1O motivo é que as funções de agregação operam na coluna inteira, enquanto a referência a 'value' está tentando operar linha por linha. Para resolver isso, usamos uma consulta aninhada:
SELECT value + (SELECT MIN(value) FROM table1)
FROM table1Isso funciona porque a consulta aninhada (SELECT MIN(value) FROM table1) é executada primeiro e retorna um único valor, que pode então ser usado na consulta principal para cada linha.
Casos de uso comuns para agregações aninhadas:
1. Comparar cada valor com a média
2. Calculando a porcentagem do total
3. Encontrando diferenças em relação aos valores máximo ou mínimo
Desafio
FácilTabelas e colunas disponíveis:
items:id,price
Calcule quanto o preço de cada item excede o preço médio de todos os itens. Exiba o ID do item, seu preço e a diferença em relação à média. Nomeie a coluna da diferença como diff_from_avg.
Ordene os resultados pela diferença em ordem decrescente.
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