-
Notifications
You must be signed in to change notification settings - Fork 1
/
Integrador MySQL NBA.sql
148 lines (122 loc) · 5.03 KB
/
Integrador MySQL NBA.sql
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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
/*
Llegó el momento de poner a prueba nuestros conocimientos de bases de datos, para ello nos
han propuesto el siguiente desafío:
Tenemos que adivinar la clave y posición de una caja fuerte. El cerrojo consta de 4 candados,
cada candado tiene de clave, un número que puede ser de más de 1 cifra y una posición que
puede ir desde 1 a 4.
Nosotros tenemos los 4 candados en la mano (Candado A, Candado B, Candado C y Candado D)
debemos averiguar la posición de cada candado y la clave del mismo.
1- Abrir el script de la base de datos llamada “nba.sql”, que se encuentra en el drive y ejecutarlo
para crear todas las tablas e insertar datos en las mismas. Deberá obtener el siguiente diagrama
de relación:
*/
USE nba;
SELECT * FROM equipo;
SELECT * FROM estadistica;
SELECT * FROM jugador;
SELECT * FROM partido;
/*
CANDADO A:
Posición: El candado A está ubicado en la posición calculada a partir del número obtenido en la/s
siguiente/s consulta/s:
Teniendo el máximo de asistencias por partido, muestre cuantas veces se logró dicho máximo.
Este resultado nos dará la posición del candado (1, 2, 3 o 4)
Clave: La clave del candado A estará con formada por la/s siguientes consulta/s a la base de
datos:
Muestre la suma total del peso de los jugadores, donde la conferencia sea Este y la posición sea
centro o esté comprendida en otras posiciones.
*/
SELECT count(*)
FROM estadistica
WHERE Asistencia_por_partido = (SELECT max(Asistencias_por_partido) FROM estadistica);
SELECT sum(j.peso)
FROM jugador AS j
INNER JOIN equipo AS e
ON j.nombre_equipo = e.nombre
WHERE e.conferencia LIKE 'East' AND j.posicion LIKE '%C%';
# Posición Candado A: 2
# Clave candado A: 14043
/*
CANDADO B:
Posición: El candado B está ubicado en la posición calculada a partir del número obtenido en la/s
siguiente/s consulta/s:
Muestre la cantidad de jugadores que poseen más asistencias por partidos, que el numero de
jugadores que tiene el equipo Heat.
Este resultado nos dará la posición del candado (1, 2, 3 o 4)
Clave: La clave del candado B estará con formada por la/s siguientes consulta/s a la base de
datos:
La clave será igual al conteo de partidos jugados durante las temporadas del año 1999.
*/
SELECT * FROM jugador;
SELECT * FROM estadistica;
SELECT count(*) FROM jugador WHERE nombre_equipo LIKE '%Heat%';
SELECT count(*)
FROM estadistica
WHERE Asistencias_por_partido > (SELECT count(*) FROM jugador WHERE nombre_equipo LIKE '%Heat%');
SELECT count(*)
FROM partido
WHERE temporada LIKE '%99%';
# Posición Candado B: 3
# Clave candado B: 3480
/*
CANDADO C:
Posición: El candado C está ubicado en la posición calculada a partir del número obtenido en la/s
siguiente/s consulta/s:
La posición del código será igual a la cantidad de jugadores que proceden de Michigan y forman
parte de equipos de la conferencia oeste.
Al resultado obtenido lo dividiremos por la cantidad de jugadores cuyo peso es mayor o igual a
195, y a eso le vamos a sumar 0.9945.
Este resultado nos dará la posición del candado (1, 2, 3 o 4)
Clave: La clave del candado C estará con formada por la/s siguientes consulta/s a la base de
datos:
Para obtener el siguiente código deberás redondear hacia abajo el resultado que se devuelve de
sumar: el promedio de puntos por partido, el conteo de asistencias por partido, y la suma de
tapones por partido. Además, este resultado debe ser, donde la división sea central.
*/
SELECT count(*)
FROM jugador AS j
INNER JOIN equipo AS e
ON j.nombre_equipo = e.nombre
WHERE j.procedencia LIKE '%Michigan%' AND e.conferencia LIKE '%West%';
SELECT count(*)
FROM jugador
WHERE peso >= 195;
SELECT avg(Puntos_por_partido)
FROM estadistica;
SELECT count(Asistencias_por_partido)
FROM estadistica;
SELECT sum(Tapones_por_partido)
FROM estadistica;
SELECT round((avg(e.Puntos_por_partido) + count(e.Asistencias_por_partido) + sum(e.Tapones_por_partido)))
FROM estadistica AS e
INNER JOIN jugador AS j
ON e.jugador = j.codigo
INNER JOIN equipo AS eqp
ON j.nombre_equipo = eqp.nombre
WHERE eqp.division LIKE '%Central%';
# Posición Candado C: 1
# Clave candado C: 631
/*
CANDADO D
Posición: El candado D está ubicado en la posición calculada a partir del número obtenido en la/s
siguiente/s consulta/s:
Muestre los tapones por partido del jugador Corey Maggette durante la temporada 00/01. Este
resultado debe ser redondeado. Nota: el resultado debe estar redondeado
Este resultado nos dará la posición del candado (1, 2, 3 o 4)
Clave: La clave del candado D estará con formada por la/s siguientes consulta/s a la base de
datos:
Para obtener el siguiente código deberás redondear hacia abajo, la suma de puntos por partido
de todos los jugadores de procedencia argentina.
*/
SELECT sum(e.Tapones_por_partido)
FROM estadistica AS e
INNER JOIN jugador AS j
ON e.jugador = j.codigo
WHERE j.nombre LIKE '%Corey Maggette%' AND e.temporada LIKE '%00/01%';
SELECT round(sum(e.Puntos_por_partido))
FROM estadistica as e
INNER JOIN jugador as j
ON e.jugador = j.codigo
WHERE j.procedencia = "Argentina";
# Posición Candado D: 4
# Clave candado D: 191