Otra select complicada

Hola crrono,
Mi problema es el siguiente:
Tengo dos tablas:
Buscador
Id
tilulo
Descripción
Palabras
Id
idbuscador
Palabra
Peso
He intentado hacer esta select:
select titulo, descripcion, palabra, peso from palabras right join buscador on palabras.idbuscador = buscador.id where palabra = 'buceo'
La idea es obtener una lista de palabras where palabra = 'loquesea' y de ella obtener las filas correspondientes en buscador pero no funciona.
Trabajo con access y la consulta la realizo en una página asp.
También lo he intentado con in pero no puedo enlazar las dos tablas.
Esta consulta me funciona correctamente:
select descripcion, titulo from buscador where buscador.id in ( select idbuscador from palabras where palabra = 'buceo' ) and buscador.id in ( select idbuscador from palabras where palabra = 'tenerife' )

1 Respuesta

Respuesta
1
la consulta que tu me pides en Sql Standard sería así
SELECT B.*,P.*
FROM BUSCADOR B, PALABRAS P
WHERE P.ID_BUSCADOR=B.ID_BUSCADOR
AND P.PALABRA='BUCEO'
Estoy seguro que funciona a un 900 por cien.
Pero claro, Access tiene su forma propia de establecer los JOINS.
No lo he usado mucho, (el Access), pero veo que quizás le falte la condición de unión del join, lo que yo puse con la sentencia
P.ID_BUSCADOR= B.ID_BUSCADOR, eso es lo unico distinto (además de la forma de construcción del Join, claro está).
Pero voy a intentarlo yo en mi Access, a ver que pasa.
He hecho una pruebecilla en Access con dos tablas similares a las tuyas, y la diferencia que veo es que tu has puesto RIGHT JOIN, mientras que el generador de SQL interno de ACCESS para ese tipo de consulta me ha puesto un
INNER JOIN, prueba a cambiar eso en tu consulta y ya me dirás.. ¿ok?, A mi me ha funcionado.. suerte.
Pablo
En principio pensé que iría demasiado lento, dando por supuesto que leería todos los registros de las dos tablas. Probado, he visto que va de p´ta madre.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas