Consulta segun yo erronea
Publicado por Charly Brown (1 intervención) el 24/11/2017 04:50:07
Hola comunidad programadora
Disculpen que los moleste pero necesito ayuda de expertos
Hay una consulta que dice:
-- Nombre del equipo, estadio y ciudad a la que pertenecen aquellos equipos que mas punters tienen registrados
Y la respuesta fue:
Sin embargo yo digo que es asi
Si alguien pudiera darme argumentos fuertes para debatir se los agradeceria mucho
Disculpen que los moleste pero necesito ayuda de expertos
Hay una consulta que dice:
-- Nombre del equipo, estadio y ciudad a la que pertenecen aquellos equipos que mas punters tienen registrados
Y la respuesta fue:
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
SELECT nombre_equipo,
nombre_estadio,
nombre_ciudad
FROM equipo
NATURAL JOIN equipo_ciudad
NATURAL JOIN ciudad
NATURAL JOIN equipo_estadio
NATURAL JOIN estadio
WHERE id_equipo IN (
SELECT jugador_equipo.id_equipo
FROM jugador
NATURAL JOIN jugador_equipo
NATURAL JOIN punter
GROUP BY jugador_equipo.id_equipo
HAVING COUNT(id_jugador) = (SELECT MAX(total)
FROM (
SELECT
jugador_equipo.id_equipo,
COUNT(id_jugador) AS total
FROM jugador
NATURAL JOIN jugador_equipo
NATURAL JOIN punter
GROUP BY jugador_equipo.id_equipo
) AS T1))
Sin embargo yo digo que es asi
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
SELECT tackles
FROM(
SELECT Distinct ON (tackles) tackles,id_equipo_v AS id_equipo,COUNT(Distinct(id_partido)) AS t1
FROM Equipo INNER JOIN Partido ON equipo.id_equipo=partido.id_equipo_v natural join jugador natural join jugador_equipo natural join defensiva
WHERE temporada='2002'
GROUP BY id_equipo_v,tackles
UNION ALL
SELECT Distinct ON (tackles) tackles,id_equipo_l AS id_equipo,COUNT(Distinct(id_partido)) AS t1
FROM Equipo INNER JOIN Partido ON equipo.id_equipo=partido.id_equipo_l natural join jugador natural join jugador_equipo natural join defensiva
WHERE temporada='2002'
GROUP BY id_equipo_l,tackles) AS t2
GROUP BY id_equipo,tackles
HAVING SUM(t1)>(
SELECT AVG(partidos)
FROM(
SELECT id_equipo, SUM(t1) AS partidos
FROM(
SELECT id_equipo_v AS id_equipo ,nombre_equipo,nickname_equipo,COUNT(id_partido) AS t1
FROM Equipo JOIN Partido ON equipo.id_equipo=partido.id_equipo_v
WHERE temporada='2002'
GROUP BY nickname_equipo,nombre_equipo,id_equipo_v
UNION ALL
SELECT id_equipo_l AS id_equipo,nombre_equipo,nickname_equipo,COUNT(id_partido) AS t1
FROM Equipo JOIN Partido ON equipo.id_equipo=partido.id_equipo_L
WHERE temporada = '2002'
GROUP BY nickname_equipo,nombre_equipo,id_equipo_l) AS t4
GROUP BY id_equipo) AS t5)
Si alguien pudiera darme argumentos fuertes para debatir se los agradeceria mucho
Valora esta pregunta


0