MySQL: Ordenar por Relevancia
Pregunta de Progger99 | 01/05/2021 a las 13:56
Quiero ordenar una consulta de búsqueda para varias palabras de acuerdo con la relevancia, es decir: cuanto más palabras clave estén incluidas en el registro, más alto debería mostrarse el registro, porque tiene más relevancia.
Hasta ahora, mi consulta MySQL se ve así:
SELECT * FROM tab WHERE text LIKE 'palabra1' OR text LIKE 'palabra2' OR text LIKE 'palabra3' LIMIT 10 ORDER BY ??
Pero, ¿qué viene después del ORDER BY? Espero que alguien pueda ayudarme. Por cierto, ¡no usaría una full text search!
Temas Relacionados
MySQL/PHP: Cómo recuperar el último INSERT ID
Información | 0 Comentarios
Script Batch: Apagar Computadora Windows
Tutorial | 2 Comentarios
MySQL: Ordenar por múltiples Columnas
Pregunta | 1 Respuesta
VirtualBox: Cambiar la Fecha y la Hora
Tutorial | 10 Comentarios
MySQL: Saltos de Línea en MySQL
Consejo | 0 Comentarios
MySQL: Buscar y Reemplazar directamente en la Base de Datos
Consejo | 1 Comentario
MySQL: SELECT 0 en lugar de NULL
Pregunta | 4 Respuestas
Aviso Importante
Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.
Participar
Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.
Una forma de implementar eso sin usar una búsqueda de full text sería tomar una consulta que se parezca a esto:
Por lo tanto, cada palabra coincidente conduce a un aumento de la clasificación al ordenar. Si las tres palabras aparecen en "text", obtenemos un rango de 3, mientras que la cantidad con una sola palabra coincidente es 1 y, por lo tanto, el registro correspondiente aparece más abajo.
01/05/2021 a las 19:54