Subconsultas – Parte 2
Parte da seção Fundamentos do Journey de SQL da Coddy. Lição 39 de 72.
Existem três tipos principais de subconsultas:
- Subconsultas escalares - Retornam um único valor (uma linha, uma coluna)
- Subconsultas de linha - Retornam uma única linha com várias colunas
- Subconsultas de tabela - Retornam várias linhas e colunas
Por exemplo, aqui estão alguns casos de uso para cada tipo de subconsulta:
Subconsulta escalar - Encontrar funcionários que ganham mais do que o salário médio:
SELECT name, salary
FROM employees
WHERE salary > (
SELECT AVG(salary)
FROM employees
);Subconsulta de linha - Encontre funcionário(s) com o mesmo departamento e salário que Alice
SELECT name
FROM employees
WHERE (department, salary) = (
SELECT department, salary
FROM employees
WHERE name = 'Alice'
);Subconsultas de tabela - Mostrar os departamentos e a quantidade de funcionários
SELECT department, count
FROM (
SELECT department, COUNT(*) as count
FROM employees
GROUP BY department
) as dept_counts;Observe os casos de uso:
- Escalar - Comparações simples (>, <, =)
- Quando você precisar corresponder a várias colunas
- Quando você precisar consultar um conjunto de resultados
Desafio
FácilTabelas e colunas disponíveis:
shop:price,quantity,category,list_date
Encontre as categorias cuja quantidade total seja maior que a média de todas as quantidades em shop.
Importante: Você deve usar uma subconsulta dentro da cláusula HAVING para calcular a média. Não use um valor fixo nem uma consulta separada: a subconsulta deve calcular AVG(quantity) diretamente da tabela shop dentro de HAVING.
Etapas para resolver:
- Primeiro, escreva uma subconsulta que calcule a média de todas as quantidades em
shop:SELECT AVG(quantity) FROM shop - Em seguida, para cada categoria, some suas quantidades e compare com essa subconsulta usando a palavra-chave
HAVING
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