El titulo del post se me quedaba corto para explicar claramente el objeto de mi pregunta.
En realidad deberia ser:
"Cómo ordenar resultados de una consulta MySQL por orden de relevancia?"
Estoy creando un motor de busqueda para una pagina (es el primero que hago) para poder encontrar entradas en una tabla, la busqueda puede ser por varias palabras, no importa el numero porque la consulta se crea de manera dinamica, asi que pondre el caso mas sencillo, una busqueda con dos palabras, el codigo de la consulta MySQL es el siguiente:
Código :
SELECT * FROM `test` WHERE ( `campo` LIKE %pollo% AND `campo` LIKE %vaca% ) OR ( `campo` LIKE %pollo% OR `campo` LIKE %vaca% ) LIMIT 0 , 30
El problema es que me gustaria que me devolviera los resultados por orden de relevancia , o sea, los resultados que cumplen las dos condiciones (AND) y despues los que solo cumplen una de las condiciones (OR).
Se que se puede hacer con php, haciendo dos consultas o haciendo despues una nueva consulta por cada resultado obtenido, pero despues tendre problemas con la paginacion de resultados y ademas creo que es mucho lio. Ademas como no se demasiado de SQL es un buen momento para aprender un "poquillo".
Bueno, otra vez, gracias por vuestro tiempo.