lunes, 31 de octubre de 2011

SUB CONSULTAS

Para realizar los siguientes ejercicios, se recomienda descargar los archivosBDFacturacion_DML BDFacturacion_DDL que se encuentran en la categorÍa 
BASE DE DATOS, de este blog.


--Listar los productos con sus respectivas categorías
select codigoProducto, nombreProducto, precioProducto,
(select nombreCategoria from tbCategoria

where codigoCategoria= tbProducto.codigoCategoria) as [categoriaProducto]
from tbProducto
--Listar las categorías con sus respectivos números de productos
select codigoCategoria,nombreCategoria,
(select count(*) from tbProducto

where codigoCategoria=tbCategoria.codigoCategoria) as [numeroProductos]
from tbCategoria
--Listar los productos que ayan vendido 2 unidades
select * from(select p.nombreProducto,count(*) as [cantidad]
from tbProducto p
inner join tbDetalleFactura df on p.codigoProducto=df.codigoProducto
group by p.nombreProducto,df.codigoProducto) as productos
where cantidad = 2
--Listar los productos cuyas ventas esten entre 100 y 500
select * from(select p.nombreProducto,
isnull((select sum(importeProducto) from tbDetalleFactura

where codigoProducto=p.codigoProducto),0) as [ventaProducto]
from tbProducto p) as productos
where ventaProducto between 100 and 500
--Listar aquellos productos que hayan sido facturados
select codigoProducto, nombreProducto, precioProducto
from tbProducto
where codigoProducto in (select distinct codigoProducto from tbDetalleFactura)
--Listar los productos de la categoría 'Memorias'
select codigoProducto, nombreProducto, precioProducto
from tbProducto
where codigoProducto in(select p.codigoProducto
from tbProducto p inner join tbCategoria c on c.codigoCategoria=p.codigoCategoria
where c.nombreCategoria = 'Memorias')
 

No hay comentarios:

Publicar un comentario