我是否可以使用某种SQL语句在我的表中的1列上进行搜索,这与我正在寻找的类似。
如果我正在寻找与“汽车”有关的东西,但我拼写为“Kar”,它必须返回“汽车”的项目。
或
如果我正在寻找“我的公司”并将其拼写为“我的公司”,它仍然必须重新调整“我的公司”。
Select * from TableName where Column Like '%company%'
将返回“我的公司”,但我需要更多,因为用户不会总是知道如何拼写。所以我需要更先进的东西,比如一些小型Google App或其他东西......
答案 0 :(得分:2)
答案 1 :(得分:2)
这是一个非常复杂的问题。快速回答是使用SQL Server soundex算法,但它很无望。试试this SO answer上的建议。 (更新)
答案 2 :(得分:1)
阅读此博文:http://googlesystem.blogspot.com/2007/04/simplified-version-of-googles-spell.html
这是您可以使用SQL实现的,但它不是内置功能。
答案 3 :(得分:0)
帮助用户找到所需内容的另一种方法是在搜索字段上实现预先输入。如果用户输入:“我的”,他将获得“我的公司”作为建议,并可能与此相符。
您可以使用jquery或其他javascript库轻松实现类型提前。这是jQuery的类型提前插件列表:http://plugins.jquery.com/plugin-tags/typeahead
答案 4 :(得分:0)
没有。一个全文索引可能会让你更接近,这取决于你的要求(你正在寻找什么确切的功能?)一个选项是滚动自己的.NET程序集与所需的功能添加它(CREATE ASSEMBLY)到SQL服务器并使用它来搜索。