SQL包含问题

Mic*_*lis 3 sql sql-server full-text-search contains

谁可以给我解释一下这个?我在下面有两个查询结果.


查询:

select * from tbl where contains([name], '"*he*" AND "*ca*"')
Run Code Online (Sandbox Code Playgroud)

结果集:

赫兹汽车租赁

海明威的小提琴


查询:

select * from tbl where contains([name], '"*he*" AND "*ar*"')
Run Code Online (Sandbox Code Playgroud)

结果集:

没有


第一个查询是我所期望的,但我希望第二个查询返回"Hertz Car Rental".我是否从根本上误解了"*"在全文搜索中的作用?

谢谢!

hat*_*ica 5

我认为SQL Server将您的字符串解释为prefix_terms.星号不是普通的旧通配符说明符.Fulltext和Contains是面向单词的.对于你想要做的事情,你最好使用普通的旧LIKE而不是CONTAINS.

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