我对CONTAINSTABLE功能有疑问。我想找到与搜索字符串结束的所有内容。
我可以使用*来查找以searchvalue开头的所有内容,但我希望SQL LIKE函数中的%符号等效。
我想要的是:找到以123结尾的所有内容,所以作为searchvalue,我可以在我的CONTAINSTABLE函数中使用“* 123”。但这不起作用..
如果我想要所有以123开头的结果,我使用“123 *”,这样就可以了。
但是 - >的等价物是什么?喜欢%123?在CONTAINSTABLE函数中它不是“* 123”。 那是什么?
谢谢!
答案 0 :(得分:0)
不幸的是,SQL Server全文搜索不支持搜索带有前导“%”的表达式 - 我自己尝试过,但它不受支持。
你可以为CONTAINS(“%postfix”)搜索CONTAINS(“表达式%”) - 但不是。
马克
答案 1 :(得分:0)
这是我的解决方法:
我存储了全文列两次。一旦处于正常状态,另一个反向。查找包含“china”的所有值,我发出以下查询:
select * from MyBigTable
where TheNormalColumn contains ('"china*"')
or TheReversedColumn contains ('"anihc*")
这是工作量的两倍,占用了两倍的空间,但它确实有效。