Repaso consultas xampp
Enviado por Jorge_Alfonso • 18 de Mayo de 2021 • Apuntes • 716 Palabras (3 Páginas) • 2.489 Visitas
Realizar las siguientes consultas sobre la BD gestión_ventas.
- Obtener todos los pedidos que se ha realizado el cliente 1 ordenados por la fecha de realización. 3
select id from pedido p where id_cliente='1' order by fecha;
- Obtener todos los clientes que realizaron un pedido durante el año 2017, cuya cantidad esté entre 300€ y 1000€. 3
select id_cliente from pedido p where year(fecha)=2017 && total BETWEEN 300 and 1000;
- Obtener todos los pedidos que se realizaron durante el año 2017, cuya cantidad total sea superior a 500€. 3
select id from pedido p where year(fecha)=2017 && total >500;
- Obtener el número total de clientes de nuestra BD. Sale el numero 10
SELECT COUNT(id) from cliente;
- Obtener la media de los pedidos realizados en el 2019. Media=638.8633
select avg(total) from pedido where year(fecha)=2019;
- Obtener el identificador, nombre y primer apellido de aquellos clientes cuyo segundo apellido no sea nulo. El listado deberá estar ordenado alfabéticamente por apellidos y nombre. 8
select id,nombre,apellido1 from cliente where apellido2!='null' order by apellido1,nombre;
- Obtener los pedidos realizados por los comerciales durante la fecha 17-08-2016. Muestra el identificador del comercial, nombre, apellidos y total. 2
select c.id,c.nombre,apellido1,apellido2,total from comercial c INNER join pedido cl on cl.id=c.id where year(fecha)=2016 and month(fecha)=8 and day(fecha)=17;
- Obtener los nombres de los clientes que no empiezan por A y que hayan realizado algún pedido. El listado deberá estar ordenado alfabéticamente. 4
select DISTINCT nombre from pedido p inner join cliente c on c.id=p.id_cliente where nombre not like 'A%' order by nombre;
- Obtener el nombre de todos los clientes que han realizado algún pedido con el comercial Daniel Sáez Vega. 3
select DISTINCT c.nombre from cliente c inner join pedido p on p.id_cliente=c.id inner join comercial co on co.id=p.id_comercial where co.nombre='Daniel' and co.apellido1='Sáez' and co.apellido2='Vega';
- Obtener el identificador, nombre y los apellidos de todos los clientes que han realizado algún pedido. El listado debe estar ordenado alfabéticamente. 8
select distinct c.id ,nombre,apellido1,apellido2 from cliente c inner join pedido p on p.id_cliente=c.id order by nombre;
- Obtener la mayor cantidad de los pedidos con un total mayor que 100. Sale 999.99
SELECT max(total) from pedido where total>100;
- Obtener la comisión de mayor valor que existe en la tabla comercial. 0.15
SELECT max(comisión) from comercial ;
- Obtener los identificadores de los clientes que han realizado algún pedido. 8
select DISTINCT c.id from cliente c inner join pedido p on p.id_cliente=c.id;
- Obtener el nombre y los apellidos de todos los comerciales que ha participado en algún pedido realizado por María Santana Moreno. 1
select DISTINCT co.nombre,co.apellido1,co.apellido2 from cliente c inner join pedido p on p.id_cliente=c.id inner join comercial co on co.id=p.id_comercial where c.nombre='María' and c.apellido1='Santana ' and c.apellido2='Moreno';
- Obtener los nombres de los comerciales que terminan por O. 3
select distinct nombre from comercial where nombre like '%o';
- Obtener la cantidad total que suman todos los pedidos realizados por clientes de la categoría 100. Sale 2333.06
select sum(total) from pedido p inner join cliente c on c.id=p.id_cliente where categoría=100;
...