En SQL tienes (de Msyql?.. hablamos de esa Base de datos?) las busquedas tipo:
"FULL TEXT Search"
http://www.mysql-hispano.org/page.php?id=15&pag=1
Que arrojan los resultados de una consulta en función al nº de conincidencias y ya ordenado por ese porcentaje ...
Un saludo,