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

¿Cómo hacer coincidir y ordenar por similitud en MySQL?

No estoy seguro si LIKE es la manera correcta de hacer esto. Si necesita buscar palabras clave dentro de su texto y ordenar los resultados por puntaje de relevancia, debe usar Índice de texto completo de MySQL y Funciones de búsqueda de texto completo de MySQL . Lo siento si esto lo aleja de lo que realmente está tratando de hacer, pero le recomiendo echarle un vistazo. Algunas citas del manual de referencia de MySQL:

1) Cómo crear un índice de texto completo en varias columnas de una tabla

mysql> CREATE TABLE articles (
    ->   id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
    ->   title VARCHAR(200),
    ->   body TEXT,
    ->   FULLTEXT (title,body)
    -> );

2) Datos de muestra

3) Consulta de muestra que busca palabras clave en varias columnas y muestra el resultado + la puntuación: