2010-02-17 11 views

Répondre

-4

créer une base de données de toutes les requêtes de recherche entrant dans votre application. (Journal de requêtes)

créer une table qui a des champs similaires

QueryText varchar(x) 
Occurence int 

puis effectuez une recherche où le texte de la requête commence par ce que l'utilisateur est à la recherche et à l'ordre par l'apparition décroissant.

where QueryText LIKE 'some text%' ORDER BY Occurence DESC 
+0

Suis intéressé de voir pourquoi les gens ont downvoted cela, bien que je pense que je connais la réponse ... (trop lent?) –

+0

Je ne suis pas sûr moi-même, mais ce ne serait pas lent du tout parce que nous marquons l'apparition de la requête, donc au lieu de 100 lignes du même texte, nous avons seulement 1 ligne avec une occurrence de 100. Vous pouvez le stocker vous-même dans SQL ou dans Lucene si vous le souhaitez. J'utilise en fait ceci et il fait très bien pour trouver des phrases de recherche communes. –

1

réponse très simple ici, ça va vous aider à démarrer.

Le projet SpellChecker, qui fait partie de lucene.net contrib, vous donnera le message "Did you mean?" De Google. comme fonctionnalité, vérifiez cela. Pour la saisie semi-automatique, vous pouvez ajouter un * à la fin de la requête de texte. Donc, ja * renverrait java, jack, jane, etc. De plus, * va renverrait java, lave, etc (même si vous devez autoriser explicitement les jokers principaux)

this helps