Ver Mensaje Individual
  #3 (permalink)  
Antiguo 11/04/2012, 17:08
Avatar de unreal4u
unreal4u
 
Fecha de Ingreso: octubre-2008
Mensajes: 72
Antigüedad: 15 años, 6 meses
Puntos: 10
Respuesta: relevancia de resultados

tendrías que implementar un algoritmo tu mismo (ocupando Levenshtein por ejemplo) para sortear en base a argumentos que tu consideres son más importantes o bien usar algún motor prehecho como Sphinx, Lucene, Xapian o Hyper Estraier pero en algún punto (exceptuando Hyper Estraier) tendrás que meterle mano al sorteo de resultados. El más fácil de ocupar es Lucene y tb ordena los resultados predeterminadamente de menos a más, o sea, si busco por Adrian primero me entregará Adrian y después Adriano, ya que Adrian está más cerca de la consulta inicial que Adriano. Sin embargo, lo más probable es que ambos reciban score de 100%, y en ese caso, podrás aplicar un array_reverse a los resultados que tengan el mismo score, y ahí te mostrará Adriano primero y Adrian después.

Si quieres algo más simple, sortea en MySQL de forma descendiente pero no es algo fácilmente personalizable, lo que te mencioné arriba sí lo es ;)

Saludos.