Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/01/2010, 20:18
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Ayuda con query

Cita:
El problema es que el primer IN en vez de "filtrar" los resultados los suma...es decir no busca por "car wheels" sino que busca todas las imagenes que contenga el tag "car" y las suma con los resultados de la busqueda de "wheels" por lo que falla.
Es que eso es precisamente lo que le estás diciendo que haga... Que busque todos los registros de tags que en el campo tag contenga o "car" o "wheels".
Si lo que quieres es que busque "car wheels", entonces eso es lo que tienes que poner:
Código MySQL:
Ver original
  1. SELECT images.*
  2. FROM images JOIN nodes ON images.id = nodes.image_id
  3. WHERE tag_id IN (SELECT tags.id FROM tags WHERE tags.tag LIKE  '%car wheel%')
  4. GROUP BY images.id
o bien
Código MySQL:
Ver original
  1. SELECT images.*
  2. FROM images JOIN nodes ON images.id = nodes.image_id
  3. WHERE tag_id IN (SELECT tags.id FROM tags WHERE tags.tag REGEXP '%car%wheel%')
  4. GROUP BY images.id
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)