Sintaxis JOIN
Resumen de las diferentes sintaxis para hacer joins.
Sintaxis FROM-WHERE:
-- Producto vectorial o cross join
SELECT * FROM Profesor, Departamento;
-- Equivalente a inner join
SELECT *
FROM Profesor p, Departamento d
WHERE p.CodigoDepartamento = d.Codigo;Sintaxis JOIN-ON:
Sirve para cualquier tipo de join (inner, outer, left, right...)
SELECT *
FROM Profesor p JOIN Departamento d
ON p.CodigoDepartamento = d.Codigo;También se pueden mezclar las dos sintaxis anteriores en un JOIN-WHERE:
SELECT *
FROM Profesor p JOIN Departamento d
WHERE p.CodigoDepartamento = d.Codigo;Sintaxis JOIN-USING:
Sólo se puede hacer cuando las columnas en ambas tablas tienen el mismo nombre (en la DB de Departamentos no se puede hacer, pero en Sakila sí):
Joins de múltiples tablas
Es recomendable esta sintaxis para hacer joins entre muchas tablas:
De este modo en el WHERE quedan únicamente las condiciones finales que queramos aplicar, sin las condiciones para hacer los joins, que quedan dentro de los ON ....
Por ejemplo:
Last updated