首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如sql freetext搜索

如sql freetext搜索
EN

Stack Overflow用户
提问于 2011-11-15 05:08:44
回答 1查看 176关注 0票数 0

也许这是一个愚蠢的问题。

如何使用自由文本在sql中实现“like '%test%‘?”

我认为包含和自由文本等同于“like '%test%',加上一个get的语法检查和性能。

在我的例子中,我有:

代码语言:javascript
复制
select * from ServiceOfferResultIndexed where contains(FirstName,'test') 

这给了我18

代码语言:javascript
复制
rows.select * from ServiceOfferResultIndexed where FirstName like '%test%'

这给了我229行。

谢谢你的帮助。

数据库是MS SQL 2005。我认为它确实支持* as后缀。看起来,如果我提供'"*test"‘,*就被认为是一个单词,而不是一个通配符。Test变成了下面的单词。

Contains将只支持"test *",它查找以“test”开头的所有短语,后跟任何其他字符。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-15 05:15:34

这是两个不同的表达式。LIKE '%test%'将查找这四个字符在一起的任何行(例如,证言或参赛者),其中contains将匹配单词。

我不知道您使用的是什么全文引擎,但通常都支持通配符。例如,如果使用where contains(firstame, '*test*')会发生什么?在自由文本搜索中,您必须查阅特定的dbms文档中的通配符。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8128135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档