Ver Mensaje Individual
  #6 (permalink)  
Antiguo 18/02/2010, 12:06
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: hacer dos inner join

juaniquillo,
si la tabla tags está relacionada con la tabla productos por medio de los campos id_prod de productos e id_padre_tags de tags, esto que te ocurre es lógico, pues imagino que no todos los productos tendrán tags, y al usar INNER JOIN sólo aquellos productos que tienen tags y las categorías relacionadas serán objeto de la búsqueda. TEndrías que usar LEFT JOIN en los cruces para que buscara en todos los productos, tengan o no categorías, y tengan o no tags...
Por otra parte, creo que la consulta con OR se debe hacer dentro de un sólo paréntesis...
(productos.title_prod LIKE '%variable_busqueda%' OR productos.desc_prod LIKE '%variable_busqueda%' OR tags.tags_tags LIKE '%variable_busqueda%)

No obstante, el problema es el cruce de datos con INNER JOIN cuando no todos los productos tienen asignadas categorías, o no todos los productos tienen asignados tags.
saludos, amigo juaniquillo.