Hola!!
Estoy utilizando MATCH AGAINST en mi buscador y quiero que me busque tanto si es una palabra, los registros que contengan dicha palabra o una derivada o como si se busca más de una palabra que me encuentre los registros que contengan todas las palabras o derivadas pero no me lo hace.
Esta es la query que tengo:
Utilizo LIKE para un campo en concreto y para otro el match, mi problema viene con el match. Me he leído la documentación de mysql y por lo que pone, para que tenga en cuenta los registros donde salgan ambas palabras hay que ponerle el + delante.
Si pongo: MATCH(TT.text) AGAINST ('+silicona +simetrica' IN BOOLEAN MODE) me devuelve los registros correctos pero si lo combino con el operador * para que me retorne palabras derivadas sólo me lo hace bien si el * está al final de la palabra: MATCH(TT.text) AGAINST ('+silicona +simetrica*' IN BOOLEAN MODE), me devuelve los registros que tienen silicona y simetricas por ejemplo.
Ahora, si quiero que me retorne tb los registros que tengan "asimetricas" por ejemplo y hago el query que he mostrado al principio no me lo retorna bien.
El problema viene al poner el operador * delante pero no se el motivo. ¿Alguien puede decirme que estoy haciendo mal?
Gracias!!