Curso SQL STGT
JOINS Facilita la recuperación de la información de varias tablas .
En SQL tenemos 5 tipos de JOINS :
• INNER JOIN
• LEFT OUTER JOIN
• RIGHT OUTER JOIN
• FULL OUTERJOIN
• CROSS JOIN
Para una demostración de estas características primero vamos a crear la tabla
Customers y Orders como se muestra en la imagen de abajo usando el siguiente
script
Curso de SQL Consultasy
SubConsultas
1
-- Create Customers Table and Insert records
CREATE TABLE Customers
( CustomerId INT, Name VARCHAR(50) )
GO
INSERT INTO Customers(CustomerId, Name) VALUES(1,'Shree')
INSERT INTOCustomers(CustomerId, Name) VALUES(2,'Kalpana')
INSERT INTO Customers(CustomerId, Name) VALUES(3,'Basavaraj')
GO
-- Create Orders Table and Insert records into it
CREATE TABLE Orders
(OrderId INT,CustomerId INT, OrderDate DateTime)
GO
INSERT INTO Orders(OrderId, CustomerId, OrderDate)
VALUES(100,1,Getdate()-1)
INSERT INTO Orders VALUES(200,4,Getdate())
INSERT INTO Orders VALUES(300,3,Getdate()+1)GO
Curso de SQL Consultas y
SubConsultas
2
1. INNER JOIN ( Sql Server )
Inner Join retorna sólo las filas coincidentes en ambas las tablas
( es decir, devuelve sólo las filas para que la unión decondición satisface ) .
Demo 1 : Según los datos en nuestras mesas de demostración , los clientes con
CustomerId 1 y 3 de la tabla Clientes tienen las órdenes en la tabla Pedidos.
¿Dónde y cuando elcliente con CustomerId 2 no tiene ningún orden en la tabla
Pedidos?
Así que el Inner Join en la columna de la CustomerId entre la tabla Customers y
Orders devolverá los clientes y del Orden detallesde los clientes con CustomerId 1
y sólo 3
SELECT *
FROM Customers C
INNER JOIN Orders O
ON O.CustomerId = C.CustomerId
RESULTADO:
Curso de SQL Consultas y
SubConsultas
4
2. Left OUTER JOIN / LeftJOIN
Left Outer Join/Left Join devuelve todas las filas de la tabla a la izquierda y las filas
coincidentes correspondientes de la tabla de la derecha .
Si tabla de la derecha no tiene el registro...
Regístrate para leer el documento completo.