Built-In Aggregate Part 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. É aqui que as consultas aninhadas se tornam úteis.
Quando você deseja realizar cálculos que combinam linhas individuais com valores agregados, você precisa usar uma consulta aninhada. Aqui está o porquê:
Isso não fornecerá o resultado por linha que você deseja:
SELECT value + MIN(value)
FROM table1A razão é que as funções de agregação trabalham em toda a coluna, enquanto a referência 'value' está tentando trabalhar 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 a partir de valores máximos ou mínimos
Desafio
FácilTabelas e colunas disponíveis:
<strong>items</strong>:<strong>id</strong>,<strong>price</strong>
Calcule o 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
4More Keywords
The IN keywordThe BETWEEN keywordThe LIKE keywordThe AS keywordRecap - Cellphone Models2Conditions
Conditions BasicsThe AND keywordThe OR keywordThe NOT keywordMultiple Conditions CombinedParenthesisBooleans5Arithmetic Operations
Mathematical OperatorsMathematical ColumnsThe Modulo OperationThe ROUND() Function3Specific Return Format
Null valuesSort Results Part 1Sort Results Part 2Recap - Cyber Security FirmLimit number of recordsRecap - Vehicle Factory6Intro Challenges
Recap - Parliamentary ElectionRecap - Police Criminal ArrestRecap - Bar Beverage ContainerRecap - Engineer new columns