100% encontró este documento útil (1 voto)
98 vistas4 páginas

Consultas Avanzadas

El documento muestra diferentes consultas SQL para combinar tablas utilizando joins internos, externos y completos, así como la operación UNION. Se explican y ejecutan ejemplos de joins internos, izquierdos, derechos y completos entre tablas de clientes, pedidos y proveedores para combinar y resumir datos. También incluye un ejemplo de la operación UNION para combinar los nombres de clientes y proveedores en una sola consulta.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
100% encontró este documento útil (1 voto)
98 vistas4 páginas

Consultas Avanzadas

El documento muestra diferentes consultas SQL para combinar tablas utilizando joins internos, externos y completos, así como la operación UNION. Se explican y ejecutan ejemplos de joins internos, izquierdos, derechos y completos entre tablas de clientes, pedidos y proveedores para combinar y resumir datos. También incluye un ejemplo de la operación UNION para combinar los nombres de clientes y proveedores en una sola consulta.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

/*Consultas Avanzadas*/

Use Negocios2020
go

/*Combinar tablas (Where)*/


Select PR.IdProducto,
PR.NomProducto,
PV.NomProveedor,
PR.PrecioUnidad
From Compras.proveedores PV , Compras.productos PR
Where PV.IdProveedor = PR.IdProveedor
go

/*Combinar tablas (Join)*/--Recomendado


Select PR.IdProducto,
PR.NomProducto,
PV.NomProveedor,
PR.PrecioUnidad
From Compras.proveedores PV JOIN Compras.productos PR
On PV.IdProveedor = PR.IdProveedor
go

/*Combinar 03 Tablas */
Select PR.IdProducto,
PR.NomProducto,
PV.NomProveedor,
CA.NombreCategoria,
PR.PrecioUnidad
From Compras.proveedores PV JOIN Compras.productos PR
On PV.IdProveedor = PR.IdProveedor JOIN
Compras.categorias CA
On PR.IdCategoria = Ca.IdCategoria
go

/****** INNER JOIN **********/--Interna


--(Muestra solo los que coinciden en la comparación)
Select PR.IdProducto,
PR.NomProducto,
PV.NomProveedor,
PR.PrecioUnidad
From Compras.proveedores PV INNER JOIN Compras.productos PR
On PV.IdProveedor = PR.IdProveedor
go
/*Combinar 03 Tablas */
Select PR.IdProducto,
PR.NomProducto,
PV.NomProveedor,
CA.NombreCategoria,
PR.PrecioUnidad
From Compras.proveedores PV INNER JOIN Compras.productos PR
On PV.IdProveedor = PR.IdProveedor INNER JOIN
Compras.categorias CA
On PR.IdCategoria = Ca.IdCategoria
go

/***** OUTER JOIN ********/


--Externa (Muestra los que coinciden y los que no coinciden en
la comparación
--Hay 03 tres tipos
--LEFT OUTER JOIN
--(Muestra los que coinciden y los que no coinciden en la
comparación con la tabla del lado Izquierdo)
Select CL.*,
PC.*
From Ventas.clientes CL
LEFT JOIN Ventas.pedidoscabe PC
On CL.IdCliente = PC.IdCliente
go

--Insertemos un par de nuevos clientes


Insert Ventas.clientes
Values
('CL001','Alicorp','Av Argentina 111','001','222222'),
('CL002','Donofrio','Av Venezuela 345','002','333333')
go

--Volver a ejecutar la consulta


Select CL.*,
PC.*
From Ventas.clientes CL
LEFT JOIN Ventas.pedidoscabe PC
On CL.IdCliente = PC.IdCliente
go
--RIGHT OUTER JOIN
--(Muestra los que coinciden y
--los que no coinciden en la comparación
--con la tabla del lado Derecho)
Select CL.*,
PC.*
From Ventas.clientes CL RIGHT JOIN Ventas.pedidoscabe PC
On CL.IdCliente = PC.IdCliente
go

--Insertemos un par de nuevos Pedidos


Insert Ventas.pedidoscabe
Values
('9999',Null,Null,getdate(),Getdate()+1,Getdate()
+3,0,30,'Tortugas Restau','Las Gacelas
111','Lima',null,'1734','Peru'),
('8888',Null,Null,getdate(),Getdate()+1,Getdate()
+3,0,30,'Popeyes Restau','Los Galgos
111','Comas',null,'1731','Peru')
go

--Volver a ejecutar
Select CL.*,
PC.*
From Ventas.clientes CL RIGHT JOIN Ventas.pedidoscabe PC
On CL.IdCliente = PC.IdCliente
go

--FULL OUTER JOIN


--(Muestra los que coinciden y los que no
--coinciden en la comparación con ambas tablas)
Select CL.*,
PC.*
From Ventas.clientes CL FULL JOIN Ventas.pedidoscabe PC
On CL.IdCliente = PC.IdCliente
go

/*UNION*/
Select NomCliente As [Invitado],
'Cliente ' As [Tipo]
From Ventas.clientes
UNION
Select NomProveedor As [Invitado],
'Proveedor' As [Tipo]
from Compras.proveedores
go

También podría gustarte