Por ejemplo, hago la búsqueda de una frase, si aparece en el título serían 4 puntos, si aparece en la desripción 2 y si aparece en la url 1 punto. Luego los sumo, y ordeno por cantidad de puntos:
1º el que tenga 7 puntos
2º el que tenga 6 puntos
3º etc....
Como puedo lograr esto??, actualmente yo busco de esta manera:
Código MySQL:
Ver original
mysql_query("SELECT distinct artTitulo, artDescripcion, palabrasArticulo from ((select s1.artTitulo, s1.artDescripcion, s1.palabrasArticulo, 1 as priority from articulos s1 WHERE MATCH (artTitulo) AGAINST ('$frase')) union (select s2.artTitulo, s2.artDescripcion, s2.palabrasArticulo, 2 as priority from articulos s2 WHERE MATCH (artDescripcion) AGAINST ('$frase')) union (select s3.artTitulo, s3.artDescripcion, s3.palabrasArticulo, 3 as priority from articulos s3 WHERE MATCH (palabrasArticulo) AGAINST ('$frase'))) uDR order by uDR.priority DESC ", $server_link)
Pero los resultados no son muy buenos y muchas veces los usuarios no encuentran lo que buscan.
Muchas gracias y espero que puedan ayudarme