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;Tecnologia
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;Tecnologia
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';Tecnologia
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;Tecnologia
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
LEFTJOIN departments ON employees.department_id = departments.department_id;Tecnologia
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.
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.
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
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
Essa consulta usa a palavra-chave `ON` com uma condição adicional para unir apenas clientes ativos com pedidos.
3. Autoadesão
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
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