MySQL - Ayuda con algunas consultas mysql

 
Vista:

Ayuda con algunas consultas mysql

Publicado por Joselin riquelme (1 intervención) el 14/01/2021 21:00:04
Hola, ojala me pudiesen ayudar con un trabajo, como falte a algunas clases, no se realizar consultas multitabla.

por ejemplo la tablas son las siguientes.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
create database comercio2019b;
use comercio2019b;
 
CREATE TABLE paises (codpais char(5) default NULL,nompais char(25)default NULL);
 
INSERT INTO paises VALUES ('ARG','Argentina');
INSERT INTO paises VALUES ('BRA','Brazil');
INSERT INTO paises VALUES ('CHI','China');
INSERT INTO paises VALUES ('TAI','Taiwan');
 
CREATE TABLE productos (codprod char(6) default NULL,nomprod char(20) default NULL,desprod char(25) default NULL);
 
 
 
INSERT INTO productos VALUES ('AM021','Alambique electrico','Aiwa');
INSERT INTO productos VALUES ('AX306','Guitarra Acustica','sin descripccion');
INSERT INTO productos VALUES ('BG109','TV PLASMA 42p daijuo','RCA, super video, otros');
INSERT INTO productos VALUES ('HK635','Refrigerador 200L','Dos puertas');
INSERT INTO productos VALUES ('DR425','Equipo Musical 200W','sin descripccion');
INSERT INTO productos VALUES ('PI221','MiniFrezzer 50L','Sin Marca');
INSERT INTO productos VALUES ('PD666','FINTENDO WII','Sin Marca');
INSERT INTO productos VALUES ('FI000','PS III','Sony');
 
CREATE TABLE proveedores (codprov char(5) default NULL,nomprov char(25) default NULL);
 
 
INSERT INTO proveedores VALUES ('ACC01','Electronica Las Bananas');
INSERT INTO proveedores VALUES ('ACC02','Zhongguo Electronics');
INSERT INTO proveedores VALUES ('ACC03','Che-Bastian Electrics');
 
INSERT INTO proveedores VALUES ('ACC04','Tropicalisima Motors');
INSERT INTO proveedores VALUES ('INF01','Rio Turbio Company');
INSERT INTO proveedores VALUES ('INF02','El Ultimo Tango Motors');
INSERT INTO proveedores VALUES ('INF03','Electronica Buena Vista');
INSERT INTO proveedores VALUES ('ACC66','Importaciones BDMystery');
 
CREATE TABLE paisprov(codpais char(5),codprov char(5));
 
INSERT INTO paisprov VALUES ('ARG', 'ACC01');
INSERT INTO paisprov VALUES ('BRA', 'ACC02');
INSERT INTO paisprov VALUES ('CHI', 'ACC03');
INSERT INTO paisprov VALUES ('TAI', 'ACC04');
INSERT INTO paisprov VALUES ('ARG', 'INF01');
INSERT INTO paisprov VALUES ('BRA', 'INF02');
INSERT INTO paisprov VALUES ('CHI', 'INF03');
INSERT INTO paisprov VALUES ('TAI', 'ACC66');
 
create table embarques(codemb int(10), fdespacho date, frecepcion date,codprov char(5), codprod char (6), cantprod int (4), preunit int(10), total int(10));
 
INSERT INTO embarques VALUES (1,'2014-01-10','2014-02-14','ACC01','FI000',2,4000,cantprod*preunit);
 
INSERT INTO embarques VALUES (2,'2014-01-10','2014-02-14','ACC02','AX306',4,5000,cantprod*preunit);
 
INSERT INTO embarques VALUES (3,'2014-02-15','2014-03-01','ACC03','BG109',6,5000,cantprod*preunit);
 
INSERT INTO embarques VALUES (4,'2014-04-01','2014-04-14','INF01','PD666',4,3000,cantprod*preunit);
 
INSERT INTO embarques VALUES (5,'2014-05-10','2014-05-20','ACC66','DR425',4,5000,cantprod*preunit);
 
INSERT INTO embarques VALUES (6,'2014-06-10','2014-06-30','ACC04','PI221',5,5000,cantprod*preunit);
 
INSERT INTO embarques VALUES (7,'2014-07-03','2014-07-20','INF02','AM021',3,6000,cantprod*preunit);
 
INSERT INTO embarques VALUES (8,'2014-07-03','2014-07-30','ACC66','FI000',5,4000,cantprod*preunit);
 
INSERT INTO embarques VALUES (9,'2014-08-03','2014-08-14','INF01','AX306',4,7000,cantprod*preunit);
 
INSERT INTO embarques VALUES (10,'2014-09-03','2014-09-14','INF02','BG109',2,6000,cantprod*preunit);
 
INSERT INTO embarques VALUES (11,'2014-10-03','2014-10-14','ACC02','DR425',6,7000,cantprod*preunit);
 
INSERT INTO embarques VALUES (12,'2014-11-20','2014-11-15','ACC04','AX306',6,4000,cantprod*preunit);
 
INSERT INTO embarques VALUES (13,'2014-11-20','2014-11-15','ACC04','DR425',4,4000,cantprod*preunit);
 
INSERT INTO embarques VALUES (14,'2014-12-20','2014-12-15','ACC66','HK635',4,4000,cantprod*preunit);
 
INSERT INTO embarques VALUES (15,'2014-12-20','2014-12-15','ACC02','PI221',4,4000,cantprod*preunit);
 
INSERT INTO embarques VALUES (16,'2015-01-10','2015-06-14','ACC02','AM021',2,5000,cantprod*preunit);
INSERT INTO embarques VALUES (17,'2015-01-10','2015-07-14','ACC02','AX306',5,6000,cantprod*preunit);
INSERT INTO embarques VALUES (18,'2015-04-01','2015-08-14','INF01','HK635',3,5000,cantprod*preunit);
 
INSERT INTO embarques VALUES (19,'2015-05-10','2015-09-20','ACC04','DR425',2,5000,cantprod*preunit);
 
INSERT INTO embarques VALUES (20,'2015-06-10','2015-07-30','ACC66','PI221',5,5000,cantprod*preunit);
INSERT INTO embarques VALUES (21,'2015-07-03','2015-06-20','INF01','AM021',3,6000,cantprod*preunit);
INSERT INTO embarques VALUES (22,'2015-07-03','2015-05-30','ACC66','AX306',2,7000,cantprod*preunit);
INSERT INTO embarques VALUES (23,'2015-08-03','2015-04-14','INF02','FI000',2,4000,cantprod*preunit);
INSERT INTO embarques VALUES (24,'2015-09-03','2015-03-14','INF01','BG109',2,6000,cantprod*preunit);
INSERT INTO embarques VALUES (25,'2015-10-03','2015-02-14','ACC02','DR425',3,7000,cantprod*preunit);
 
INSERT INTO embarques VALUES (26,'2015-11-20','2015-11-15','ACC04','AX306',6,4000,cantprod*preunit);
INSERT INTO embarques VALUES (27,'2015-11-20','2015-11-15','ACC03','DR425',4,4000,cantprod*preunit);
INSERT INTO embarques VALUES (28,'2015-12-20','2015-12-15','ACC04','HK635',4,4000,cantprod*preunit);
 
INSERT INTO embarques VALUES (29,'2015-12-20','2015-12-15','ACC03','PI221',7,4000,cantprod*preunit);
 
INSERT INTO embarques VALUES (30,'2016-01-10','2016-12-14','ACC01','AM021',3,4000,cantprod*preunit);
INSERT INTO embarques VALUES (31,'2016-01-10','2016-11-14','ACC02','AX306',1,6000,cantprod*preunit);
INSERT INTO embarques VALUES (32,'2016-02-15','2016-10-01','ACC03','BG109',4,5000,cantprod*preunit);
INSERT INTO embarques VALUES (33,'2016-04-01','2016-09-14','INF01','HK635',2,5000,cantprod*preunit);
 
INSERT INTO embarques VALUES (34,'2016-05-10','2016-08-20','ACC66','PD666',4,3000,cantprod*preunit);
 
INSERT INTO embarques VALUES (35,'2016-06-10','2016-07-30','ACC04','PI221',5,5000,cantprod*preunit);
 
INSERT INTO embarques VALUES (36,'2016-07-03','2016-06-20','INF02','AM021',3,6000,cantprod*preunit);
INSERT INTO embarques VALUES (37,'2016-07-03','2016-07-30','ACC66','AX306',5,7000,cantprod*preunit);
 
INSERT INTO embarques VALUES (38,'2016-08-03','2016-05-14','INF02','AX306',2,7000,cantprod*preunit);
INSERT INTO embarques VALUES (39,'2016-09-03','2016-09-14','INF01','BG109',3,6000,cantprod*preunit);
INSERT INTO embarques VALUES (40,'2016-09-03','2016-09-14','INF01','PD666',3,3000,cantprod*preunit);
 
INSERT INTO embarques VALUES (41,'2017-01-10','2017-06-14','ACC66','FI000',2,4000,cantprod*preunit);
INSERT INTO embarques VALUES (42,'2017-01-10','2017-07-14','ACC02','PD666',5,3000,cantprod*preunit);
INSERT INTO embarques VALUES (43,'2017-04-01','2017-08-14','INF01','FI000',3,4000,cantprod*preunit);
INSERT INTO embarques VALUES (44,'2017-05-10','2017-09-20','ACC04','DR425',2,5000,cantprod*preunit);
INSERT INTO embarques VALUES (45,'2017-06-10','2017-07-30','ACC66','PI221',5,5000,cantprod*preunit);
INSERT INTO embarques VALUES (46,'2017-07-03','2017-06-20','INF01','PD666',3,3000,cantprod*preunit);
INSERT INTO embarques VALUES (47,'2017-07-03','2017-05-30','ACC66','AX306',2,7000,cantprod*preunit);
INSERT INTO embarques VALUES (48,'2017-08-03','2017-04-14','INF02','FI000',2,4000,cantprod*preunit);
INSERT INTO embarques VALUES (49,'2017-09-03','2017-03-14','INF01','PD666',2,3000,cantprod*preunit);
INSERT INTO embarques VALUES (50,'2017-10-03','2017-02-14','ACC02','DR425',3,7000,cantprod*preunit);


y en base a eso realizar las siguientes consultas

1. Cual es el país que más productos (distintos) nos ha vendido?.

2. Listado de productos entregados desde Argentina y Taiwan, indique el nombre del proveedor (país,
proveedor, producto)


3. Listado de proveedores han distribuido todos los productos marcados como "sin marca". Recuerde que
puede ser más de uno.

4. Cree una tabla temporal con la información de montos de embarques por país, (Codigo, Nombre, Suma
Total). Finalmente obtenga el promedio de esta tabla temporal(por país).

5. Listado de productos que llegaron desde China y Taiwan entre Junio y Agosto del 2015, pero de
aquellos embarques que superen los USD$1000.

6. Listado de productos que superen el promedio de embarques de 'Alambique electrico' y 'Refrigerador
200L' para el año 2016. El promedio es la suma total de los embarques de cada producto (en $), luego a eso
se le calcula el promedio.

7. Que productos son distribuidos por tres o más proveedores.

8. Que proveedores de China superan las máximas importaciones de Argentina (máximos en dinero según
proveedor)

9. Cuál es el o los proveedores que más dinero reflejan en los embarques (recuerde que puede ser más de
uno).

10. Resumen de ventas por Mes de Recepción, indicando cantidad de embarques y monto total en $USD.

11. Ud debe pagar un impuesto adicional de todos los productos provenientes de Taiwan. El impuesto es de un 7%. ¿Cuanto es el total pagado en impuestos
desde el comienzo de las importaciones?.

12. De que paises son exportadores del producto 'MiniFrezzer 50L'.

13. Imprima el total de compras (número de embarques) hechas por 'Zhongguo Electronics' y el resumen de
dinero.

14. Resumen de ventas por proveedor: número de embarques, cantidad de productos, total en dinero

15. Cuál es el país al que más dinero se paga?.

16. Listado de países cuyos montos en embarques (en suma) superan los USD$4000.- (o busque un valor
adecuado)

17. Qué proveedores han realizados embarques del producto 'Alambique eletectrico', el año 2016.

18. Listado de los productos más vendidos, en los primeros dos lugares de ventas. (Los primeros
dos lugares corresponden a los dos más altos montos, sin embargo, es posible que dos o más productos
tengan los mismos montos, en ese caso debe listar todos aquellos que correspondan a los 2 primeros
montos).


Espero me puedan ayudar.



saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ayuda con algunas consultas mysql

Publicado por eusebio (1 intervención) el 14/01/2021 21:18:44
hola para la pregunta dos la consulta seria de la siguiente manera
2. Listado de productos entregados desde Argentina y Taiwan, indique el nombre del proveedor (país,
proveedor, producto)

1
2
select paises.nompais as Pais, proveedores.nomprov as Proveedor, productos.nomprod as Productos from productos, embarques, proveedores, paisprov, paises
where productos.codprod=embarques.codprod and embarques.codprov=proveedores.codprov and proveedores.codprov=paisprov.codprov and paisprov.codpais=paises.codpais and (nompais="Argentina" or nompais="Taiwan") group by nompais;


espero ayudarte, y suerte con las otras.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda con algunas consultas mysql

Publicado por Juan (1 intervención) el 15/01/2021 03:58:54
Te ayudo con el primero que es un poco complejo, la información que arroja la BD es que hay dos proveedores (INF01 y ACC66) Rio Turbio Company e Importaciones BDMystery respectivamente, que han ofrecido hasta 6 productos diferentes, y que curiosamente son ambos Argentinos.

Al sacar el Max de esa cantidad devuelve 6, para el caso como ambos son del mismo país no hay problema, pero si fuesen de diferente nacionalidad el query habría que buscarle otra salida, pero así de momento te funciona

1
2
3
4
5
6
SELECT MAX(mycount), paises.nompais
FROM (SELECT count(distinct codproD) AS mycount , codprov
FROM embarques
GROUP BY codprov) as results
inner join paisprov on results.codprov = paisprov.codprov
inner join paises on paisprov.codpais = paises.codpais
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda con algunas consultas mysql

Publicado por anonymous (59 intervenciones) el 17/01/2021 01:34:47
Joselín veo bien difícil que logre desarrollar este taller, si faltó a clases, hay querys que involucran funciones de agregado de gran complejidad como el punto 6 por ejemplo.

Ahí le adjunto un pdf
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar