sql >> Base de Datos >  >> RDS >> Mysql

MySQL:búsqueda eficiente con coincidencia parcial de palabras y puntuación de relevancia (TEXTO COMPLETO)

La nueva característica de búsqueda de texto completo de InnoDB en MySQL 5.6 ayuda en este caso. Utilizo la siguiente consulta:

SELECT MATCH(column) AGAINST('(word1* word2*) ("word1 word1")' IN BOOLEAN MODE) score, id, column 
FROM table
having score>0
ORDER BY score 
DESC limit 10;

donde ( ) agrupa palabras en una subexpresión. El primer grupo tiene like word% sentido; el segundo busca la frase exacta. La partitura se devuelve como flotante.