Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/10/2011, 01:57
topcat
 
Fecha de Ingreso: marzo-2005
Mensajes: 10
Antigüedad: 19 años, 10 meses
Puntos: 0
Select con JOIN a 3 tablas

Buenos días:

Después de buscar durante varios días sigo siendo incapaz de hacer funcionar esta sentencia select combinando 3 tablas.

Select * FROM 1100_UN AS A INNER JOIN 1100_TipoInmueble AS B ON A.IdTipoInmueble=B.IdTipoInmueble INNER JOIN 1100_TipoOperacion AS C ON A.IdTipoOperacion=C.IdTipoOperacion

el problema es que me da el siguente error....

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'A.IdTipoInmueble=B.IdTipoInmueble INNER JOIN 1100_TipoOperacion AS C ON A.IdTipoOperacion=C.IdTipoOperacion'.

Si sólo hago la comparación entre dos tablas (eliminando el otro INNER JOIN) no me da mayor problema pero evidentemente no hace lo que quiero.

He probado a "anidar" un INNER dentro de otro como vi en algún ejemplo pero tampoco, me sigue dando error.

La idea es muy "clásica"... tabla 1100_UN con inmuebles y, entre otros, un código de tipo de inmueble (casa, piso, finca...) y otro tipo de operación (venta, alquiler, etc...). Tenemos otras dos tablas donde sacamos la definición de ese tipo de inmueble y tipo de operación.

Lo he probado de esta manera....
SELECT * FROM 1100_UN AS UN, 1100_TipoInmueble AS TIPO, 1100_TipoOperacion AS OPERACION WHERE UN.IdTipoInmueble=TIPO.IdTipoInmueble AND UN.IdTipoOperacion=OPERACION.IdTipoOperacion

y me funciona pero luego tengo que meterle los condicionantes para filtrar según un buscador previo; me parece mucho mas práctico la primera opcion (si me funcionase claro )

Muchas gracias de antemano.

Saludos.