SQL - Left Join - Access 2003

   
Vista:

Left Join - Access 2003

Publicado por Juan (19 intervenciones) el 27/08/2008 22:47:11
El siguiente SQL funciona pero no me trae todo los datos de la Tabla 2, no se porque, la sentencia está bien escrita y estoy buscando en la web hace un montón y no encuentro nada. Alguien me da una mano.

SELECT A.FECHA, B.VALOR
FROM (TEMP AS A) LEFT JOIN (DATOS AS B) ON A.FECHA=B.FECHA
WHERE (A.FECHA BETWEEN #2008-01-01# AND #2008-04-01#)
AND (B.IDVAR=10)

No me devuelve datos NULL de la tabla derecha (los que no existen en Tabla Datos). No tengo idea porque, hace 3 horas que estoy probando!
Probe con inner join y lo mismo.

Agradecería su ayuda!
Juan
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

RE:Left Join - Access 2003

Publicado por pacopaz (143 intervenciones) el 27/08/2008 22:56:09
No estoy seguro de que funcione para access y no se si funcione, aun cuando lo acepte, pero puede intentar poniendo b.idvar = 10 dentro de las condiciones del join, es decir, que quede así:

SELECT A.FECHA, B.VALOR
FROM (TEMP AS A) LEFT JOIN (DATOS AS B) ON A.FECHA=B.FECHA AND (B.IDVAR=10)
WHERE (A.FECHA BETWEEN #2008-01-01# AND #2008-04-01#)

Espero que te sirva.

Saludos.
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

RE:Left Join - Access 2003

Publicado por Juan (19 intervenciones) el 28/08/2008 13:09:40
Funcionó gracias!! Lo único negativo es que la consulta se hizo muy pesada (tarda mucho). Será que el Access no es tan efectivo para este tipo de Joins?
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

RE:Left Join - Access 2003

Publicado por Juan (19 intervenciones) el 28/08/2008 15:46:42
Lo más eficiente (y por mucho) fue crear una tabla temporal con los datos de la segunda tabla y después hacerle el left join a esa.
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