J'ai implémenté la recherche de texte intégral sur la base de données SQL Server 2005 à l'aide du mot-clé CONTAINSTABLE. Je me demandais s'il y avait un moyen d'ajouter une fonctionnalité de "ça sonne" ou de google "avez-vous voulu dire que" si la requête d'origine ne donne aucun résultat.Fonctionnalité "ressemble à un son", "vouliez-vous dire" utilisant la recherche plein texte dans SQL Server 2005
Répondre
SQL Server a les fonctions SOUNDEX et DIFFERENCE
Cette situation est liée SO réponse pourrait être utile: How to make a sql search query more powerful?
Le soundex pour SQL Server est très limité et frustrant, je recommande vraiment de jeter un oeil à Lucene .net http://incubator.apache.org/lucene.net/. Lucene est une bibliothèque de moteurs de recherche de texte performante et complète. Elle est également très facile à utiliser dans les projets .NET. Si vous avez besoin d'un moteur de recherche sérieux pour votre application, allez avec Lucene.
Certaines fonctionnalités extraites de http://lucene.apache.org/java/docs/features.html:
- Ranked searching, meilleurs résultats
- sont retournés en premier nombre requête puissante
- types: requêtes de phrases, caractères génériques
- requêtes, requêtes de proximité, plage
- requêtes et plus de recherche sur le terrain (par exemple, titre, auteur, contenu)
- ate-range sea rching tri par un
- multiples index des champs de recherche avec
- résultats fusionnés permet la mise à jour simultanée
- et la recherche
Si vous voulez être en mesure de faire cela, vous devez normaliser le texte brut et la requêtes. Exemple simple, si vous voulez pouvoir effectuer une recherche sur un type de valeur SOUNDEX, vous devez SOUNDEX à la fois la chaîne de requête et les données brutes d'origine que vous interrogez. Vous ne pouvez pas traiter efficacement l'espace de requête à la volée, donc vous le normalisez au cours de la création de l'index.
Techniquement, vous n'avez besoin que de normaliser l'index réel, pas les données, mais comme vos données sont probablement indexées, elles devront être normalisées.
Il s'agit du même processus que «bourrage» de mots, suppression de pluriels, etc.
- 1. Recherche plein texte pour plusieurs tables dans SQl Server 2005
- 2. Recherche plein texte SQL
- 3. recherche plein texte en utilisant sql server 2008
- 4. recherche plein texte vista
- 5. Recherche plein texte sur une table
- 6. SQL Server Recherche plein texte Rechercher des caractères d'échappement?
- 7. Sql Server recherche plein texte - Obtenir des occurrences de mot/emplacement dans le texte?
- 8. postgres recherche plein texte
- 9. texte intégral SQL Server Recherche
- 10. Recherche plein texte CONTAINSTABLE
- 11. Recherche plein texte dans LINQ
- 12. Texte des vues système dans SQL Server 2005
- 13. "Posts similaires" aiment la fonctionnalité en utilisant MS SQL Server?
- 14. SQl La recherche plein texte ne fonctionne pas?
- 15. Pivot SQL utilisant SQL Server 2005
- 16. Utilisation de la recherche en texte intégral avec des fichiers PDF dans SQL Server 2005
- 17. Comparaisons d'index de texte intégral dans SQL Server 2005 Express
- 18. Recherche plein texte MySQL sur plusieurs tables
- 19. Option de recherche multiple dans SQL SERVER 2005
- 20. Recherche plein texte SQL avec des colonnes de clé étrangères
- 21. Qu'est-ce que la recherche plein texte vs LIKE
- 22. Recherche plein texte avec Firebird et Delphi
- 23. Comment utiliser la recherche en texte intégral sur plusieurs tables, SQL Server 2005
- 24. Problème avec la recherche en texte intégral simple sur SQL Server 2005
- 25. recherche plein texte pour l'ensemble de données
- 26. Comment désactiver le mot stemming dans la recherche de texte intégral dans SQL Server?
- 27. Comment créer une requête sql qui utilise la recherche plein texte si un index existe?
- 28. recherche plein texte erreur de procédure stockée
- 29. SQL SERVER 2005
- 30. Pouvez-vous effectuer une recherche AND de mots-clés en utilisant FREETEXT() sur SQL Server 2005?
+1 - Bon choix. –