0% found this document useful (0 votes)
67 views

Create Database Ventas Character Set Utf8mb4

The document contains SQL statements to create databases, tables, and insert data. It creates a ventas database with cliente, comercial, and pedido tables to store customer, commercial, and order data respectively. It then inserts sample data and provides various SELECT queries to retrieve data from the tables based on different conditions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
67 views

Create Database Ventas Character Set Utf8mb4

The document contains SQL statements to create databases, tables, and insert data. It creates a ventas database with cliente, comercial, and pedido tables to store customer, commercial, and order data respectively. It then inserts sample data and provides various SELECT queries to retrieve data from the tables based on different conditions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

create database ventas character set utf8mb4;

use ventas;

create table cliente(

id int unsigned auto_increment primary key,

nombre varchar(100) not null,

apellido1 varchar(100) not null,

apellido2 varchar(100),

ciudad varchar(100),

categoria int unsigned);

create table comercial(

id int unsigned auto_increment primary key,

nombre varchar(100) not null,

apellido1 varchar (100) not null,

apellido2 varchar(100),

comision float);

create table pedido(

id int unsigned auto_increment primary key,

total double not null,

fecha date,

id_cliente int unsigned not null,

id_comercial int unsigned not null,

foreign key (id_cliente) references cliente(id),

foreign key (id_comercial) references comercial(id));

insert into cliente values (1,'Aaron', 'Rivero', 'Gomez', 'Almeria', 100);

insert into cliente values (2,'Adela', 'Salas', 'Diaz', 'Granada', 200);


insert into cliente values (3,'Adolfo', 'Rubio', 'Flores', 'Sevilla', null);

insert into cliente values (4,'Adrian', 'Suarez', null, 'Jaen', 300);

insert into cliente values (5,'Marcos', 'Loyola', 'Mendez', 'Almeria', 200);

insert into cliente values (6,'Maria', 'Santana', 'Moreno', 'Cadiz', 100);

insert into cliente values (7,'Pilar', 'Ruiz', null, 'Sevilla', 300);

insert into cliente values (8,'Pepe', 'Ruiz', 'Santana', 'Huelva', 200);

insert into cliente values (9,'Guillermo', 'Lopez', 'Gomez', 'Granada', 225);

insert into cliente values (10,'Daniel', 'Santana', 'Loyola', 'Sevilla', 125);

insert into comercial values (1,'Daniel', 'Saez', 'Vega', 0.15);

insert into comercial values (2,'Juan', 'Gomez', 'Lopez', 0.13);

insert into comercial values (3,'Diego', 'Flores', 'Salas', 0.11);

insert into comercial values (4,'Marta', 'Herrera', 'Gil', 0.14);

insert into comercial values (5,'Antonio', 'Carretero', 'Ortega', 0.12);

insert into comercial values (6,'Manuel', 'Dominguez', 'Hernandez', 0.13);

insert into comercial values (7,'Antonio', 'Vega', 'Hernandez', 0.11);

insert into comercial values (8,'Alfredo', 'Ruiz', 'Flores', 0.05);

insert into pedido values (1, 150.5, '2017-10-05', 5, 2);

insert into pedido values (2, 270.65, '2016-09-10', 1, 5);

insert into pedido values (3, 65.26, '2017-10-05', 2, 1);

insert into pedido values (4, 110.5, '2016-08-17', 8, 3);

insert into pedido values (5, 948.5, '2017-09-10', 5, 2);

insert into pedido values (6, 2400.6, '2016-07-27', 7, 1);

insert into pedido values (7, 5760, '2015-09-10', 2, 1);

insert into pedido values (8, 1983.43, '2017-10-10', 4, 6);

insert into pedido values (9, 2480.4, '2016-10-10', 8, 3);

insert into pedido values (10, 250.45, '2015-06-27', 8, 2);

insert into pedido values (11, 75.29, '2016-08-17', 3, 7);


insert into pedido values (12, 3045.6, '2017-04-25', 2, 1);

insert into pedido values (13, 545.75, '2019-01-25', 6, 1);

insert into pedido values (14, 145.82, '2017-02-02', 6, 1);

insert into pedido values (15, 370.85, '2019-03-11', 1, 5);

insert into pedido values (16, 2389.23, '2019-03-11', 1, 5);

-- CONSULTAS

-- a) Devuelve un listado con todos los pedidos que se han realizado. Los pedidos deben estar
ordenados por la fecha de realización.

select * from pedido order by fecha;

-- b) Devuelve todos los datos de los dos pedidos de mayor valor.

select * from pedido order by total desc limit 2;

-- c) Devuelve un listado con los identificadores de los clientes que han realizado algún pedido.
Tenga en cuenta que no debe mostrar identificadores que estén repetidos.

select distinct id_cliente from pedido;

-- d) Devuelve un listado de todos los pedidos que se realizaron durante el año 2017, cuya
cantidad total sea superior a 500€.

select fecha, total from pedido where fecha between "2017-01-01" and "2017-12-31" and total >
500;

-- e) Devuelve un listado con el nombre y los apellidos de los comerciales que tienen una comisión
entre 0.05 y 0.11.

select nombre, apellido1, apellido2 from comercial where comision between 0.05 and 0.11;
-- f) Devuelve el valor de la comisión de mayor valor que existe en la tabla comercial.

select * from comercial order by comision desc limit 1;

-- g) Devuelve el identificador, nombre y primer apellido de aquellos clientes cuyo segundo


apellido no es NULL. El listado deberá estar ordenado alfabéticamente por apellidos y nombre.

select id, nombre, apellido1 from cliente where apellido1 is not null order by nombre asc,
apellido1 asc;

-- h) Devuelve un listado de los nombres de los clientes que empiezan por A.

select * from cliente where nombre like "A%";

-- i) Devuelve un listado de los nombres de los clientes que terminan en A.

select * from cliente where nombre like "%a";

-- j) Devuelve un listado de los nombres de los clientes que no empiezan por A.

select * from cliente where nombre not like "A%";

-- k) Devuelve un listado con los nombres de los comerciales que terminan por e.

select * from comercial where nombre like "%e";

-- l) Mostrar los comerciales que se llamen ANTONIO.

select * from comercial where nombre like "Antonio";

-- m) Mostrar los nombres de los clientes cuya categoría esta vacía.

select* from cliente where categoria is null;

-- n) Mostrar la categoría cuya ciudad sea igual Sevilla en la tabla cliente.

select categoria, ciudad from cliente where ciudad like "sevilla";

-- o) Mostrar el nombre de los comerciales cuya comisión este entre 0.13 y 0.15
select nombre, apellido1, comision from comercial where comision between 0.13 and 0.15;

You might also like