¿La mejor manera de hacer una búsqueda ponderada en varios campos en mysql?

Esto es lo que quiero hacer:

comparar un tema de búsqueda con varios campos de mi tablaordene los resultados por importancia del campo y relevancia de la coincidencia (en ese orden)

Ex: supongamos que tengo un blog. Entonces alguien busca "php". Los resultados aparecerían de esa manera:

primero, las coincidencias para el campo 'título', ordenadas por relevanciathen, las coincidencias para el campo 'cuerpo', ordenadas por relevancia también y así sucesivamente con los campos especificados ...

Realmente hice esto con una clase en PHP pero usa muchos UNIONS (¡mucho!) Y crece con el tamaño del tema de búsqueda. Así que estoy preocupado por el rendimiento y los problemas de DOS. ¿Alguien tiene idea de esto?

Respuestas a la pregunta(5)

Su respuesta a la pregunta