Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

búsqueda por tags

Estas en el tema de búsqueda por tags en el foro de Mysql en Foros del Web. Buenas colegas... ahora estoy implementando una búsqueda avanzada por Tags pero me surge una duda. Como tengo una tabla noticia_tag , guarda el id_noticia y ...
  #1 (permalink)  
Antiguo 14/01/2010, 15:28
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
búsqueda por tags

Buenas colegas... ahora estoy implementando una búsqueda avanzada por Tags pero me surge una duda.

Como tengo una tabla noticia_tag , guarda el id_noticia y el nombre del tag. Pero dado el caso en que tengo una noticia que tiene más de 1 tags , por ejemplo 'gatos' , 'perros' ... si yo hago una busqueda

select * from noticia a inner join noticia_tags b on a.noticia_id=b.noticia_id
where tags_descripcion LIKE '%perros%' OR tags_descripcion LIKE '%gatos%'

Me va a aparecer 2 veces las misma noticia en el resultado aparte de los otros resultados que espero.

Hay alguna manera de comprobar antes si estos tags pertenecen a una noticia y si esto es verdadero que me retorne sólo un resultado de estos?
__________________
Quitenme la vida pero no la bebida.
  #2 (permalink)  
Antiguo 14/01/2010, 16:00
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: búsqueda por tags

Cesarpunk,
¿Y no lo hace así?
  #3 (permalink)  
Antiguo 14/01/2010, 16:52
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: búsqueda por tags

no... más bien creo que la alternativa fue hacer el select distinct del id de la noticia.... ahi me extrae los id (sin repetir) de esa busqueda... osea sólo me falto el distinct
__________________
Quitenme la vida pero no la bebida.

Etiquetas: tags
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:27.