Inner Join funciona no siempre
Publicado por Juan (3 intervenciones) el 22/05/2009 16:08:04
Hola. Estoy dando vueltas hace unas horas con un Inner Join en Access que no me devuelve registros cuando la última unión no se cumple:
SELECT A.FECHA, A.TURNO,
"|Min|" & A.VALOR
& "|Afecto|" & B.VALOR2
& "|Causa|" & C.VALOR2
& "|Parte|" & D.VALOR2
AS UNION_DATO,
FROM
(((DATOS AS A
INNER JOIN DATOS AS B ON A.FECHA=B.FECHA AND A.TURNO=B.TURNO AND A.IDPLANTA=B.IDPLANTA)
INNER JOIN DATOS AS C ON C.FECHA=A.FECHA AND C.TURNO=A.TURNO AND C.IDPLANTA=A.IDPLANTA)
INNER JOIN DATOS AS D ON D.FECHA=A.FECHA AND D.TURNO=A.TURNO AND D.IDPLANTA=A.IDPLANTA)
WHERE A.IDPLANTA=3
AND A.IDVAR=? AND B.IDVAR=A.IDVAR+1 AND C.IDVAR=A.IDVAR+2 AND D.IDVAR=A.IDVAR+3
ORDER BY 1, 2;
Chequeé el correcto uso de los paréntesis. Probé cambiar por LEFT JOIN pero no le encuentro la vuelta.
Agradecería mucho su ayuda.
Saludos
Juan
SELECT A.FECHA, A.TURNO,
"|Min|" & A.VALOR
& "|Afecto|" & B.VALOR2
& "|Causa|" & C.VALOR2
& "|Parte|" & D.VALOR2
AS UNION_DATO,
FROM
(((DATOS AS A
INNER JOIN DATOS AS B ON A.FECHA=B.FECHA AND A.TURNO=B.TURNO AND A.IDPLANTA=B.IDPLANTA)
INNER JOIN DATOS AS C ON C.FECHA=A.FECHA AND C.TURNO=A.TURNO AND C.IDPLANTA=A.IDPLANTA)
INNER JOIN DATOS AS D ON D.FECHA=A.FECHA AND D.TURNO=A.TURNO AND D.IDPLANTA=A.IDPLANTA)
WHERE A.IDPLANTA=3
AND A.IDVAR=? AND B.IDVAR=A.IDVAR+1 AND C.IDVAR=A.IDVAR+2 AND D.IDVAR=A.IDVAR+3
ORDER BY 1, 2;
Chequeé el correcto uso de los paréntesis. Probé cambiar por LEFT JOIN pero no le encuentro la vuelta.
Agradecería mucho su ayuda.
Saludos
Juan
Valora esta pregunta


0