MySQL Forums
Forum List  »  Spanish

Problema con tablas anidadas en consulta SELECT
Posted by: Miguel Angel Pulido González
Date: November 06, 2019 05:25AM

Hola.
Tenemos un problema con una consulta SELECT y dos tablas anidadas a la misma.
La consulta es esta:
(se han cambiado los nombres reales de las tablas y columnas para que se pueda ver mejor)

SELECT DISTINCT t1.columna1, t1.columna2
FROM tabla1 AS t1, tabla2 AS t2
WHERE t1.id1 = t2.id2 AND
(
t1.id1 IN
(
SELECT id1
FROM tabla3
WHERE
('2019-11-05 00:00:00' > tabla3.fecha_inicio AND '2019-11-30 00:00:00' > tabla3.fecha_fin) OR ('2019-11-05 00:00:00' < tabla3.fecha_inicio AND '2019-11-30 00:00:00' < tabla3.fecha_inicio)
)
OR t2.id2 NOT IN
(
SELECT distinct id2
FROM tabla3
)
)
GROUP BY t1.id1, t2.id2

La tabla3 posee las dos columnas de ids, el id1 y el id2.

Creemos que el problema es que intentamos usar dos ids distintos en cada uno de los SELECT anidados, ya que si cambiamos el id2 de la segunda consulta por id1 sí funciona pero los resultados no son válidos. Hemos podido separar en dos consultas distintas la operación para que funcione pero no somos capaces de hacerlo en la misma consulta.

Gracias por vuestra ayuda.
Saludos.

Options: ReplyQuote


Subject
Views
Written By
Posted
Problema con tablas anidadas en consulta SELECT
1958
November 06, 2019 05:25AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.