La clausula Join se utiliza para combinar filas de dos o mas tablas en funcion de una columna que se relaciona entre ellas
Cada tabla tiene un ID que es unico
ese ID es eñ campo que se debe relacionar en otras tablas
El INNER JOIN es la clausula que relaciona campos coincidentes en tablas distintas
Ejemplo
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
Diferentes tipos de JOIN
Clausula
Descricion
(INNER) JOIN:
Devuelve registros que tienen valores coincidentes en ambas tablas
LEFT (OUTER) JOIN
Devuelve todos los registros de la tabla de la izquierda y los registros coincidentes de la tabla de la derecha.
RIGHT (OUTER) JOIN:
Devuelve todos los registros de la tabla de la derecha y los registros de la tabla de la izquierda
FULL (OUTER) JOIN:
Devuelve todos los registros cuando hay una coincidencia en cualquiera de los dos. o mesa derecha
...
LEFT JOIN
LEFT JOIN devuelve todos los registros de la tabla de la esquierda, y los registros coincidientes de la tabla de la derecha
Ejemplo de codigo
En algunas bases de datos LEFT JOIN se llama LEFT OUTER JOIN.
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;
Ejemplo de codigo
La seguiente instrucion SQL seleciona todos los clientes y cualquier pedido que tenga
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID
ORDER BY Customers.CustomerName;
RIGHT JOIN
Esta clausula RIGHT JOIN devuelve todos los registros de la tabla derecha y los registros coincidentes de la tabla de la esquierda
Ejemplo de codigo
En algunas bases de datos RIGHT JOINse llama RIGHT OUTER JOIN.
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;
ejemplo
La siguiente instrucción SQL devolverá todos los empleados y cualquier pedido que podría haber colocado:
SELECT Orders.OrderID, Employees.LastName, Employees.FirstName
FROM Orders
RIGHT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
ORDER BY Orders.OrderID;
FULL OUTER JOIN
los FULL OUTER JOINpalabra clave devuelve todos los registros cuando hay una coincidencia en registros de tabla izquierdo (table1) o derecho (table2).
Sintaxis FULL OUTER JOIN
SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name
WHERE condition;
FULL OUTER JOIN El uso de esta clausula puede devolver resultados muy grandes
Ejemplos de FULL OUTER JOIN
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
Self Join
Una unión automática es una unión normal, pero la tabla se une consigo misma
sintaxis
SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE condition;
Ejemplo
La siguiente instrucción SQL coincide con los clientes que son de la misma ciudad:
SELECT A.CustomerName AS CustomerName1, B.CustomerName AS CustomerName2, A.City
FROM Customers A, Customers B
WHERE A.CustomerID < > B.CustomerID
AND A.City = B.City
ORDER BY A.City;
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias