Pular para o conteúdo principal
Documentos
FunçõesExpressõesKeywordsDeclaraçõesCláusulas

MySQL ON Palavra-chave

A palavra-chave `ON` no MySQL é usada para especificar a condição para unir tabelas em uma cláusula `JOIN`. Ele define como duas tabelas devem ser relacionadas, indicando os campos comuns entre elas.

Uso

A palavra-chave `ON` é usada principalmente em operações `JOIN` para definir a condição de mesclagem de tabelas. Ele segue diretamente a palavra-chave `JOIN` para estabelecer o vínculo entre as tabelas.

SELECT columns
FROM table1
JOIN table2
ON table1.column_name = table2.column_name;

Nessa sintaxe, `ON table1.column_name = table2.column_name` especifica a condição na qual as tabelas são unidas. A palavra-chave `ON` pode ser usada com todos os tipos de junções, incluindo `INNER JOIN`, `LEFT JOIN`, `RIGHT JOIN` e outras.

Exemplos

1. Condição básica de união

SELECT employees.first_name, departments.department_name
FROM employees
JOIN departments ON employees.department_id = departments.department_id;

Nesse exemplo, a palavra-chave `ON` especifica que as tabelas `employees` e `departments` devem ser unidas quando os campos `department_id` coincidirem.

2. Como ingressar com condições adicionais

SELECT orders.order_id, customers.customer_name
FROM orders
JOIN customers ON orders.customer_id = customers.customer_id AND customers.status = 'active';

Essa consulta usa a palavra-chave `ON` com uma condição adicional para unir apenas clientes ativos com pedidos.

3. Autoadesão

SELECT a.employee_id, a.first_name, b.first_name AS manager_name
FROM employees a
JOIN employees b ON a.manager_id = b.employee_id;

Este exemplo demonstra uma autojunção, usando a palavra-chave `ON` para relacionar funcionários a seus gerentes na mesma tabela.

4. Exemplo de LEFT JOIN

SELECT employees.first_name, departments.department_name
FROM employees
LEFT JOIN departments ON employees.department_id = departments.department_id;

Este exemplo mostra como a palavra-chave `ON` é usada com um `LEFT JOIN` para incluir todos os funcionários, mesmo aqueles não atribuídos a nenhum departamento.

Dicas e práticas recomendadas

  • Garanta a compatibilidade da coluna. Use a palavra-chave `ON` para unir tabelas com colunas que tenham tipos de dados compatíveis para evitar erros.
  • Use aliases claros. Ao unir várias tabelas, especialmente com junções automáticas, use aliases de tabela para maior clareza e brevidade.
  • Combine com `WHERE`. Depois de definir as relações com `ON`, refine ainda mais os resultados usando uma cláusula `WHERE` para filtrar os dados.
  • Verifique a lógica de união. Verifique se as condições "ON" representam com precisão a lógica comercial e os relacionamentos previstos no esquema do banco de dados.
  • Considerações sobre o desempenho. Indexar as colunas usadas na condição `ON` para melhorar o desempenho da consulta.
  • Esclarecer condições complexas. Use parênteses para esclarecer condições de união complexas, especialmente quando várias condições são combinadas.

Aprimoramento de SQL para iniciantes

Adquira as habilidades de SQL para interagir com seus dados e consultá-los.
Comece a aprender de graça