Subconsultas – Parte 1
Parte da seção Fundamentos do Journey de SQL da Coddy. Lição 38 de 72.
As subconsultas permitem combinar várias consultas em uma só. Por exemplo, considere a seguinte tabela <strong>employees</strong>:
| id | salário |
|---|---|
| 1 | 48 |
| 2 | 34 |
| 3 | 46 |
| 4 | 13 |
| 5 | 28 |
Precisamos de uma subconsulta porque não podemos usar WHERE salary > AVG(salary) diretamente, pois funções de agregação como AVG() não podem ser usadas em uma cláusula WHERE — elas só podem ser usadas depois que os dados forem agrupados.
SELECT id, salary
FROM employees
WHERE salary > (
SELECT AVG(salary)
FROM employees
);Uma subconsulta nos ajuda a encontrar funcionários que ganham mais do que o salário médio da empresa, calculando primeiro a média (consulta interna) e, em seguida, usando esse valor para filtrar os funcionários (consulta externa).
Como a média é: (48 + 34 + 46 + 13 + 28) / 5 = 33.8, este é o resultado da consulta:
| id | salário |
|---|---|
| 1 | 48 |
| 2 | 34 |
| 3 | 46 |
Desafio
FácilTabelas e colunas disponíveis:
shop:price,quantity,category,list_date
Escreva uma consulta para encontrar todos os itens (selecione todas as colunas) cujo preço seja maior que o preço médio de todos os itens.
Use uma subconsulta na cláusula WHERE para calcular o preço médio e, em seguida, compare o preço de cada item com essa média.
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