Junior — Middle
Pode explicar as diferenças entre os diferentes tipos de junções de tabelas em SQL?
sobes.tech IA
Resposta da IA
No SQL, existem vários tipos principais de junções (JOIN) que permitem combinar dados de duas ou mais tabelas:
- INNER JOIN — devolve apenas as linhas onde há correspondência em ambas as tabelas de acordo com a condição.
- LEFT JOIN (LEFT OUTER JOIN) — devolve todas as linhas da tabela da esquerda e as linhas correspondentes da direita; se não houver correspondência, os valores da direita serão NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — devolve todas as linhas da tabela da direita e as linhas correspondentes da esquerda.
- FULL JOIN (FULL OUTER JOIN) — devolve todas as linhas de ambas as tabelas, preenchendo com NULL onde não há correspondências.
- CROSS JOIN — produto cartesiano de duas tabelas, retornando todas as combinações possíveis de linhas.
Exemplo de INNER JOIN:
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
Este comando retornará os nomes dos funcionários e os nomes dos seus departamentos apenas para os funcionários que têm departamento.