2010-10-11 6 views
3

Existe-t-il une sorte d'instruction SQL que je peux utiliser pour faire une recherche sur 1 colonne dans mon tableau qui est similaire à ce que je recherche.Déclaration de recherche SQL comme Google?

Comme si je cherchais quelque chose à faire avec un "Car" mais je l'épelle comme "Kar" il doit retourner des articles de "voiture".

Ou

Si je suis à la recherche de "My Company" et j'épelle comme "MyCompany" il doit encore retun "Mon entreprise".

Select * from TableName where Column Like '%company%' retournera "Mon entreprise" mais j'ai besoin de plus car l'utilisateur ne saura pas toujours comment épeler. J'ai donc besoin de quelque chose de plus avancé comme une petite application Google ou quelque chose comme ça ...

Répondre

2

Cette fonctionnalité est dans les services de texte, donc si vous construisez un index de recherche en texte intégral, vous devriez être capable d'utiliser cette fonctionnalité.

Jetez un oeil ici:

http://msdn.microsoft.com/en-us/library/ms187384.aspx

http://msdn.microsoft.com/en-us/library/ms142571.aspx

+0

Pouvez-vous s'il vous plaît me fournir plus d'informations ou un exemple s'il vous plaît, je n'ai aucune idée de ce que c'est ou comment faire cela ..... – Etienne

+0

Détails à MSDN: http://msdn.microsoft.com/fr us/library/ms142571.aspx. Cependant, je ne pense pas que vous serez satisfait de la fonctionnalité qu'il offre. Il manque beaucoup de fonctionnalités que les vrais moteurs de recherche ont mais il est encore puissant dans ce qu'il peut faire. – Merrimack

+0

Jetez un oeil ici: SOUNDEX http://msdn.microsoft.com/fr-fr/library/ms187384.aspx http://msdn.microsoft.com/fr-fr/library/ms142571.aspx – Aliostad

0

Une autre façon de vous aider à trouver ce que les utilisateurs qu'ils recherchent est de mettre en œuvre de type avance sur le champ de recherche. Si le type d'utilisateur: "mon", il obtiendra "Mon entreprise" comme une suggestion et probablement aller avec ça.

Vous pouvez facilement implémenter le type en utilisant jquery ou d'autres bibliothèques javascript. Voici une liste des plugins de type ahead pour jQuery: http://plugins.jquery.com/plugin-tags/typeahead

2

Ceci est un problème assez complexe. La réponse rapide est d'utiliser l'algorithme SQL Server soundex, mais c'est plutôt sans espoir. Essayez les suggestions sur this SO answer. (Mis à jour)

0

Non. Un index de texte intégral peut vous aider à vous rapprocher, en fonction de vos besoins (quelles caractéristiques précises recherchez-vous?) Une option serait de rouler. Assemblage .NET avec les fonctions souhaitées l'ajouter (CREATE ASSEMBLY) au serveur sql et l'utiliser pour effectuer une recherche.

Questions connexes