create database compra_r;
use compra_r;
create table provedores (
id_provedor int(11) not null auto_increment primary key,
nombre varchar(30) not null,
telefono varchar(14),
direccion varchar(30),
correo varchar(40)
);
create table producto (
id_referencia int(11) not null auto_increment primary key,
nombre varchar(50) not null,
valor_costo float not null,
valor_venta float not null
);
create table compra (
Nf_compra int(11) not null auto_increment primary key,
id_provedor int(11) not null,
fecha_com date not null,
foreign key (id_provedor) references provedores (id_provedor)
);
create table movi_compra (
id_referencia int(11) not null,
Nf_compra int(11) not null,
cantidad varchar(21),
foreign key (id_referencia) references producto (id_referencia),
foreign key (Nf_compra) references compra (Nf_compra)
);
Insert into provedores (nombre, telefono, direccion, correo)
Values ("xiaomi sa", "3124536578", "car-23 cal-5", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("xiami redmi sas", "3453567234", "car-12 cal-12", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("nokia sa", "3154267934", "car-14 cal-2", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("alcatel sas", "3145623789", "car-23 cal-12", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("boot mobily sas", "3154678932", "car-13 cal-6", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("huksy mobily sa", "3134256743", "car-32 cal-8", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("cat sa", "3153566745", "car-11 cal-4", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("michay sa", "3126578045", "car-16 cal-5", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("samoa sa", "3145356734", "car-21 cal-6", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("romantel sas", "3135647689", "car-14 cal-1", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("yessytel sa", "3134526745", "car-45 cal-3", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("novy sas", "3143567326", "car-12 cal-3", "[email protected]");
Insert into provedores (nombre, telefono, direccion, correo)
Values ("chuquy sa", "3124546734", "car-21 cal-4", "[email protected]");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("xiaomi mi 8", "750000", "780000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("xiaomi mi 8 like", "680000", "700000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("xiaomi mi 8 pro", "980000", "1100000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("xiaomi mi 9", "990000", "1000000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("xiaomi mi 7a", "570000", "620000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("redmi note 6", "680000", "720000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("redmi note 6 pro", "780000", "820000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("redmi 6 like", "570000", "620000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("redmi note 7", "680000", "710000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("redmi note 7 pro", "720000", "750000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("Nokia m20", "680000", "720000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("Nokia n15", "520000", "560000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("Nokia su1", "630000", "650000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("Nokia s2", "550000", "590000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("a3", "460000", "490000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("Alcatel 1x", "250000", "280000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("alcatel 3x", "350000", "380000");
Insert into producto (nombre, valor_costo, valor_venta)
Values (" Alcatel x5", "520000", "580000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("Alcatel q1", "6800000", "7100000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("Alcatel q6", "720000", "750000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("boot ky 1", "220000", "260000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("ky 2", "350000", "380000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("boot ky x", "430000", "520000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("boot m14", "560000", "590000");
Insert into producto (nombre, valor_costo, valor_venta)
Values ("boot p13", "380000", "4200000");
Insert into compra (id_provedor, fecha_com)
Values ("1", "2019-11-23");
Insert into compra (id_provedor, fecha_com)
Values ("2", "2019-11-26");
Insert into compra (id_provedor, fecha_com)
Values ("3", "2019-11-23");
Insert into compra (id_provedor, fecha_com)
Values ("4", "2019-12-1");
Insert into compra (id_provedor, fecha_com)
Values ("5", "2019-12-1");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("1", "1", "1");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("2", "1", "2");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("3", "1", "6");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("4", "1", "5");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("5", "1", "3");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("6", "2", "4");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("7", "2", "7");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("8", "2", "3");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("9", "2", "7");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("10", "2", "3");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("11", "3", "4");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("12", "3", "3");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("13", "3", "7");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("14", "3", "3");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("15", "3", "5");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("16", "4", "3");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("17", "4", "2");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("18", "4", "7");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("19", "4", "2");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("20", "4", "4");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("21", "5", "3");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("22", "5", "3");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("23", "5", "2");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("24", "5", "6");
Insert into movi_compra (id_referencia, nf_compra, cantidad)
Values ("25", "5", "6");
select * from movi_compra where nf_compra = 2; /*para seleccionar la factura deseada esta es la
forma sencilla*/
select movi_compra.nf_compra, movi_compra.id_referencia, producto.nombre,
producto.valor_costo as "valor_por_unidad",
movi_compra.cantidad, cantidad * valor_costo as "valor_total"
from movi_compra
inner join producto
on movi_compra.id_referencia = producto.id_referencia
where nf_compra = 1
order by (id_referencia); /*para seleccionar la factura deseada pero aquí se incluyen datos de la
tabla producto*/
select movi_compra.nf_compra,compra.fecha_com, movi_compra.id_referencia,
producto.nombre, compra.id_provedor, producto.valor_costo as "valor_por_unidad",
movi_compra.cantidad, cantidad * valor_costo as "valor_total"
from movi_compra
inner join producto
on movi_compra.id_referencia = producto.id_referencia
inner join compra
on movi_compra.nf_compra = compra.nf_compra
where movi_compra.nf_compra = 1
order by (id_referencia); /*esta forma es mas completa para seleccionar la factura deseada
porque aquí se incluyen datos de la tabla producto y de la tabla compra*/
select valor_venta - valor_costo as "utilidad" from producto; /*utilidad normal*/
select id_referencia, nombre, valor_costo, valor_venta, valor_venta - valor_costo as "utilidad"
from producto; /*la utilidad mas completa*/
SELECT COUNT(NF_COMPRA), FECHA_COM
FROM COMPRA GROUP BY FECHA_COM
ORDER BY COUNT(NF_COMPRA) DESC; /*para saber cuantas facturas se hicieron en una fecha*/
select id_referencia, nombre, format(valor_costo,2) as valor_costo, format(valor_venta,2) as
valor_venta from producto; /*para hacer la separación de cifras*/
select id_referencia, nombre, valor_venta, round(valor_venta*1.19) as valor_venta_con_iva from
producto; /*para sacar el IVA*/
select valor_venta - valor_costo as "utilidad", sum(valor_venta - valor_costo) as "utiladad_total"
from producto; /*la utilidad con la suma de la utilidad*/
select min(valor_costo), max(valor_costo)
from producto; /*muesrta el valor_costo minimo y el valor_costo maximo*/
select sum(valor_costo)
from producto; /*para sumar el valor_costo*/