-- consultas basicas
-- algebra relacional: operaciones
-- 1. restriccion O SELECCION
-- PRODUCTOS CON PRECIO >82 Y PRECIO<20
SELECT *
FROM PRODUCTOS WHERE PrecioUnidad>82 OR PrecioUnidad<20
-- PRODUCTOS QUE INICIA NOMBRE CON LA LETRA C
SELECT *
FROM PRODUCTOS WHERE NombreProducto LIKE '%QUESO%'
AND PrecioUnidad>30 AND UnidadesEnExistencia>0
-- PRODUCTOS VENDIDOS EN EL MES DE OCTUBRE
SELECT DISTINCT NombreProducto
FROM PEDIDOS,[Detalles de pedidos],PRODUCTOS
WHERE [Link]=
[Detalles de pedidos].IDPEDIDO AND
[Link]=
[Detalles de pedidos].IdProducto
AND MONTH(FECHAPEDIDO)=10
-- CLIENTES HAN COMPRADO EN EL AO 1997
SELECT DISTINCT NombreCompaa
FROM CLIENTES,PEDIDOS
WHERE [Link]=[Link]
AND YEAR(FECHAPEDIDO)=1997
-- 2. proyeccion: SELECCIONAR COLUMAS
-- LISTA DE PRECIO DE PRODUCTOS
SELECT NombreProducto,PrecioUnidad,
CantidadPorUnidad Unidad_de_venta
FROM PRODUCTOS
-- lista de empleados
SELECT Apellidos+' '+Nombre NOMBRE_EMPLEADO,
Cargo Responsabilidad
FROM EMPLEADOS
-- productos y sus categorias
SELECT NombreCategora,NombreProducto
FROM Categoras,Productos
WHERE [Link]=
[Link]
ORDER BY NombreCategora,NombreProducto
-- 3. union: ESTRUCTURA IGUAL EN
-- COLUMNAS Y NOMBRESDE COLUMNAS
-- EMPRESAS CON LA QUE HACE NEGOCIOS
select Pas,NombreCompaa,idcliente
from clientes
union
select Pas,NombreCompaa,convert(nvarchar(5),IdProveedor) idcliente
from proveedores
-- 4. interseccion: registros comunes con est iguales
SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=10
INTERSECT
SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=9
-- 5. diferencia
-- CLIENTES QU COMPRARON EN OCT Y NO EN SET
SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=10
EXCEPT
SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=9
-- CLIENTES QU COMPRARON EN SET Y NO EN OCT
(SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=9
EXCEPT
SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=10)
UNION
(SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=10
EXCEPT
SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=9)
-- CLIENTES QU COMPRARON EN SET Y NO EN OCT
SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=9
EXCEPT
SELECT DISTINCT IDCLIENTE
FROM PEDIDOS
WHERE MONTH(FECHAPEDIDO)=10
-- 6. producto
SELECT *
FROM CLIENTES,PRODUCTOS,EMPLEADOS,Categoras
-- 7. division
SELECT DISTINCT [Link] FROM
(SELECT * FROM EMPLEADOS,Categoras) T,EMPLEADOS
WHERE [Link]=[Link]
-- 8. combinar