Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/06/2014, 19:53
Avatar de loncho_rojas
loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Encontrar palabras con al menos 3 caracteres con MATCH AGAINST

Buenas... me dijeron que se puede permitir con búsquedas MATCH AGAINST que contemple palabras con 3 caracteres.

Leyendo el manual, no estoy hallando si es o no posible, por eso, si alguien me da una mano para saber si es posible, se los agradecería.

Si bien una palabra con 3 caracteres se puede buscar con LIKE, el problema es el siguiente. Tengo en mi base de datos 2 empresas de ejemplo "EL SOL" y "LA CAL".

Si un usuario busca SOL o CAL, seguro lo encuentra, porque me baso en LIKE pero al tener mas de 2 palabras, lo hago con MATCH, y si alguien buscara esas empresas por su nombre "EL SOL" o "LA CAL", el MATCH AGAINST no lo dara como una prioridad..

esta es mi consulta de prueba...

Código MySQL:
Ver original
  1. SELECT id_empresa, nombre_empresa, ciudad
  2. FROM empresas
  3.  
  4. WHERE MATCH(nombre_empresa) AGAINST ('variable_de_busqueda' IN BOOLEAN MODE)

Me dijeron que con el BOOLEAN MODE eso me está limitando, pero no se como emparejarlo para este caso específico, es decir, que funcione a partir de 3 caracteres como relevantes.. no puedo tocar el archivo de configuracion del MYSQL ya que el server es pago y no admiten esos cambios.

Alguna manito si esto es factible.

Sino, bueno, tocará hacer alguna función que cuente la cantidad de palabras, luego cuente la cantidad de caracteres...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...