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

Un buscador mejor...

Estas en el tema de Un buscador mejor... en el foro de Mysql en Foros del Web. Buenas tardes! Estoy desarrollando un buscador en Mysql. El buscador lo tengo implementado de la siguiente forma (sin contar el autocompletar) Si se introduce SOLO ...
  #1 (permalink)  
Antiguo 09/02/2011, 12:09
 
Fecha de Ingreso: octubre-2006
Ubicación: Quart de Poblet, Valencia
Mensajes: 767
Antigüedad: 17 años, 5 meses
Puntos: 8
Busqueda Un buscador mejor...

Buenas tardes!

Estoy desarrollando un buscador en Mysql.

El buscador lo tengo implementado de la siguiente forma (sin contar el autocompletar)

Si se introduce SOLO UNA palabra, usaremos la query:

Cita:
SELECT id, name, cartel FROM carteles WHERE name LIKE '%$busqueda%' ORDER BY id ASC LIMIT 5
En cambio, si la búsqueda a realizar contiene MÁS DE UNA palabra, se usa la query:
Cita:
SELECT id, name, cartel , MATCH (name) AGAINST ('$busqueda') AS score FROM carteles WHERE MATCH (name) AGAINST ('$busqueda') ORDER BY score DESC LIMIT 5
Habiendo alterado la tabla con
Cita:
ALTER TABLE carteles ADD FULLTEXT(name);
Bien, mi problema es que las búsquedas con el MATCH-AGAINST si introduces "menos capa" no te encontraría "menos capacidad", cosa que sí que sería encontrado usando sólo la sentencia LIKE.

¿Es realmente mucho mejor realizar las búsquedas con MATCH-AGAINS que con LIKE?

Mi problema viene porque lo estoy implementando para que funcione con autocompletar (live search), y por tanto, no me sirve o no sé cómo optimizarlo para hacerlo funcionar.

Un saludo y espero que se entienda mi problema (sino comentad y explico con más detalle)

Etiquetas: buscadores, mejoras
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 07:07.