Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
BASE DE DATOS
LENGUAJE DE MANIPULACIN DE DATOS (DML-SQL)
Consultas en Oracle
Integrantes
2.
Obtener una lista de todos los productos indicando para cada uno su
cdigo, descripcin, precio
SELECT codigo, descripcion, preciounitario
FROM producto;
3.
Obtener una lista de todos los productos indicando para cada uno su
descripcin, precio y precio incluido IGV
SELECT descripcion, preciounitario, 0.18*preciounitario as IGV
FROM producto;
4.
5.
6.
Listar de cada cliente su nombre completo con el formato apellido,
nombre
SELECT nombre || ' ' || apellido as Clientes
FROM cliente;
7.
8.
9.
10.
Listar los clientes que pertenecen a la zona 1, zona 2 y zona 3
(descripcin)
SELECT cliente.nombre , zona.descripcion
FROM cliente
INNER JOIN zona
ON cliente.idzona = zona.idzona
ORDER BY zona.descripcion;
11.
Listar la descripcin de cada zona, su cantidad de caracteres, y el primer
carcter
SELECT descripcion,length(descripcion),substr(descripcion,0,1)
FROM zona;
12.
13.
14.
15.
Listar las ventas realizadas el mes de Marzo del ao 2008 ordenados por
fecha
SELECT * FROM documentoventa
WHERE EXTRACT (month FROM fecha) = 3
AND EXTRACT (year FROM fecha) = 2008;
16.
17.
Listar descripcin y precio de los tres productos ms baratos (menor
precio unitario)
SELECT * from(SELECT descripcion, preciounitario
FROM producto
ORDER BY preciounitario)
WHERE rownum <=3
18.
19.
FROM detalleventa
JOIN documentoventa
ON documentoventa.iddocumentoventa =
detalleventa.iddocumentoventa
JOIN producto
ON detalleventa.idproducto = producto.idproducto
JOIN categoria
ON producto.idcategoria = categoria.idcategoria
WHERE categoria.descripcion LIKE 'Hardware';
20.
21.
Listar los nombres de los productos comprados por los clientes de la
zona 1
SELECT detalleventa_producto.descripcion AS descripcion_producto
FROM zona
INNER JOIN cliente zona_cliente
ON zona.idzona = zona_cliente.idzona
INNER JOIN documentoventa cliente_documentov
ON cliente_documentov.idcliente = zona_cliente.idcliente
INNER JOIN detalleventa documentoventa_detalleventa
ON documentoventa_detalleventa.iddocumentoventa =
cliente_documentov.iddocumentoventa
INNER JOIN producto detalleventa_producto
ON detalleventa_producto.idproducto =
documentoventa_detalleventa.idproducto
WHERE zona.idzona = 1 ;
22.
23.
24.
25.
ON detalle_producto.idproducto = docum_detalleventa.idproducto
WHERE (fecha >= '01/03/08'
AND fecha <= '31/03/08')
AND (detalle_producto.descripcion like 'Memoria%');
26.
27.
28.
29.
30.
31.
32.
33.
Listar el total en nuevos soles de ventas realizadas por mes en el ao
2008
SELECT extract(month from fecha) AS mes, sum(total)
FROM documentoventa
group by extract(month from fecha);
34.
35.
36.
37.
GROUP BY c.nombre
ORDER BY c.nombre;
38.
39.
Listar el nombre completo de los clientes que compraron ms de una vez
en abril de 2008
SELECT nombre||' '||apellido as nombres, COUNT(nombre)
FROM documentoventa
JOIN cliente
ON documentoventa.idcliente = cliente.idcliente
WHERE EXTRACT(month from fecha) = 4
AND EXTRACT(year from fecha) = 2008
GROUP BY nombre||' '||apellido
HAVING COUNT(nombre) > 1;
40.
join producto
on detalleventa.idproducto = producto.idproducto
group by producto.descripcion
order by cantidad desc)
where rownum = 1;
41.
42.
43.
Listar la cantidad de clientes por zona, indicando el valor cero (0) para
las zonas que no tengan clientes registrados
select descripcion, count (nombre)
from zona
left join cliente
on zona.idzona = cliente.idzona
group by descripcion
order by descripcion;
44.
45.
46.
ao
Listar los productos que no han sido vendidos en Febrero del presente
select producto.descripcion, documentoventa.fecha
from detalleventa
join documentoventa
on documentoventa.iddocumentoventa =
detalleventa.iddocumentoventa
join producto
on detalleventa.idproducto = producto.idproducto
where extract (month from documentoventa.fecha) != 2;
47.
Listar la cantidad de clientes por zona que compraron al menos una vez
en abril del ao 2008
select zona.descripcion, count(zona.descripcion)
from documentoventa
join cliente
on documentoventa.idcliente = cliente.idcliente
join zona
on cliente.idzona = zona.idzona
where extract(month from fecha) = 4
and extract(year from fecha) = 2008
group by zona.descripcion;
48.
on detalleventa.idproducto = producto.idproducto
join categoria
on categoria.idcategoria = producto.idcategoria
where to_char(documentoventa.fecha,'YYYY-MM-Day') LIKE '2008-04Jueves%'
group by categoria.descripcion;