Subqueries Mysql

Grande parte dos desenvolvedores recorrem somente ao JOIN para resolver consultas que envolvem múltiplas tabelas. Uma outra ferramenta para isso que pode resolver cenários em que o JOIN não atenda, as subqueries.

Subqueries no MySQL: O Básico

Subqueries (ou subconsultas) são consultas SQL aninhadas dentro de outras consultas. Elas permitem realizar operações mais avançadas, filtrando, agregando ou relacionando dados de forma flexível.

Subquery no WHERE

Usada para filtrar resultados com base em outra consulta:

SELECT name, salary
FROM employees
WHERE salary > (SELECT AVG(salary) FROM employees);

Exemplo: seleciona funcionários com salário acima da média.

Subquery no FROM

Permite criar uma tabela temporária para ser usada na consulta principal:

SELECT department, avg_salary
FROM (
    SELECT department, AVG(salary) AS avg_salary
    FROM employees
    GROUP BY department
) AS averages
WHERE avg_salary > 3000;

Exemplo: retorna departamentos com média salarial acima de 3000.

Subquery no SELECT

Permite trazer dados agregados ou relacionados em cada linha do resultado:

SELECT name,
       (SELECT COUNT(*) FROM projects WHERE projects.employee_id = employees.id) AS total_projects
FROM employees;

Exemplo: mostra o nome do funcionário e o total de projetos em que ele está envolvido.

Conclusão

Subqueries são ferramentas poderosas para consultas SQL mais avançadas. Use-as para filtrar, agregar ou relacionar dados de forma eficiente e flexível no MySQL.

Tecnologia:
mysql

1 Comentário

Sandro Diniz Jordão
29 de Março de 2021           14:50
Subqueries (ou subconsultas) são consultas SQL aninhadas dentro de outra consulta. Elas permitem que o resultado de uma query seja usado como entrada para outra, tornando o SQL mais poderoso e dinâmico.

Deixe seu Comentário!

Comentário
Nome
Email