Consultas operador HAVING

  1. Nombre de las empresas que tienen más de dos vendedores.

SELECT v.nombrecomer
FROM vendedor v
GROUP BY v.nombrecomer
HAVING
count( numvend ) >2
LIMIT 0 , 30

  1. Número de pedido que tengan más de tres líneas de pedido.

SELECT l.numpedido
FROM linped l
GROUP BY l.numpedido
HAVING
count( l.numlinea ) >3
LIMIT 0 , 30

  1. Número de pedido donde el total de piezas pedidas es mayor que 40.

SELECT l.numpedido
FROM linped l
GROUP BY l numpedido
HAVING
SUM(lcantpedida ) >40
LIMIT 0 , 30

    1. Obtener los números de pedido donde el precio total sea superior a 1000.

SELECT l.numpedido
FROM linped l
GROUP BY l numpedido
HAVING
SUM( preciocompra*cantrecibida)>1000;
LIMIT 0 , 30

5. Para las piezas que se hayan ofertado un precio unitario medio mayor que 260€, obtener

el número de pieza, el máximo precio unitario y la cantidad de suministradores.

SELECT numpieza,MAX(preciounit),count(numvend)

FROM preciosum ps,

GROUP BY numpieza

HAVING AVG(preciounit)>260;

6. Para las piezas que se ofrecen a un precio unitario medio mayor que 260€ (sin tener en

cuenta los suministros menores de 250€) obtener el número de pieza, el máximo precio

unitario y la cantidad de suministradores.

SELECT numpieza ,MAX(preciounti)COUNT (numvend)

FROM preciosum

WHERE preciounit>250

GROUP BY numpieza

HAVING AVG(preciounit)>260;

7. Obtener aquellos números de pedido y fecha en que se confeccionaron cuya cantidad de

artículos pedidos sea superior a 30 y la recibida inferior a 10.

SELECT p.numpedido,p.fecha

FROM pedido p,linped l

WHERE p.numpedido=l.numpedido

GROUP BY l.numpedido

HAVING SUM(l.cantrecibida)>30 AND SUM (l.cantrecibida)<10;

8. Obtener el número de pieza y el precio unitario medio de aquellas piezas que tarden de

media 14 días como máximo en ser suministradas (diassum=tiempo de suminitro).

SELECT numpieza AVG (preciounti)

FROM preciosum

GROUP BY numpieza

HAVING AVG (diassum)<14;

9. Obtener los números de pedido, precio de compra y cantidad pedida de los números de la

línea 1 y recibidas en fecha 10-05-92.

SELECT numpedido,preciocompra,cantpedida

FROM linped l

WHERE numlinea=1 AND fecharecep=”1992-05-10”

10. Obtener el número, el nombre y el precio máximo unitario de las piezas cuyo precio de

venta sea mayor que 250 o menor que 170, su descuento medio oscile entre 10 y 17 y que

tengan un precio unitario medio total superior a 150, ordenado por precio máximo.

SELECT p.nimpieza.,p.nompieza,MAX (ps.preciounit)

FROM pieza p,preciousum ps

WHERE (preciovent>250 OR precivent<170) AND ps.descuento BETWEEN 10 AND 17 AND p.numpieza=ps.numpieza;

GROUP BY ps.numpieza

HAVING AVG(ps.preciounit)>150 AND AVG(ps.descuento)BETWEEN 10 AND 17

ps.preciounit>150 ORDER BY MAX (p.preciovent);

11::Determinar el número total de proveedores que pueden suministrar la pieza ‘P-0001-33’.

SELECT COUNT (numvend)

FROM preciosum

WHERE numpieza=”P-0001-33”

12. Para cada pieza, de la que se tiene información sobre sus posibles vendedores, obtener el

número de pieza, y sus precios unitarios máximo y mínimo, exceptuando la información

referida al vendedor número 1.

SELECT numpieza,Max (preciounit) ,MIN (preciounit)

FROM preciosum ps

WHERE numvend!=1

GROUP BY numpieza

HAVING

13. Dar una relación del nombre de las piezas que nos pueden suministrar más de dos

proveedores.

SELECT pi.nompieza

FROM pieza pi,preciosum ps

WHERE pi.numpieza=ps.numpieza

GROUP BY ps.numpieza,ps.numvend

HAVING COUNT ps.numvend >2

14. Obtener el número y el nombre del vendedor así como el número y nombre de las piezas

de precio unitario mayor que 200 que nos puedan suministrar.

SELECT v.numvend,v.nomvend,p.nompieza,p.numpieza

FROM vendedor v,pieza p , preciosum ps

WHERE pi.numpieza=ps.numpieza AND ps.numvend=v.numvend AND ps.preciounit>200

GROUP BY p.numpieza,v.numvend

HAVING ps.preciounit >200

ORDER BY v.numvend,v.nomvend,p.nompieza

Anuncios

Publicado el 27 septiembre, 2016 en Base de Datos. Añade a favoritos el enlace permanente. Comentarios desactivados en Consultas operador HAVING.

Los comentarios están cerrados.

A %d blogueros les gusta esto: