包含和可包含之间的区别?
Posted
技术标签:
【中文标题】包含和可包含之间的区别?【英文标题】:differences between contains and containstable? 【发布时间】:2014-06-15 17:28:30 【问题描述】:我有以下在技术上应该是等效的查询:
第一
select Product_ID from ProductSearchIndexData psid
where Product_ID = 946 and contains(psid.[Text], '("exp*")')
第二
SELECT [key] as Product_ID, rank
FROM CONTAINSTABLE(ProductSearchIndexData, [Text], '("exp*")')
where [key]= 946
第一个返回正确的结果,而另一个没有返回。
这里有什么我遗漏的吗?
谢谢!
【问题讨论】:
您确定 Product_ID 是表的主键吗? (也许是个愚蠢的问题,但我没有其他想法) 【参考方案1】:我同意“基思”。
[key] 字段返回符合条件的行的全文键值。 在您的情况下,搜索表中的关键不是 productProduct_id。
试试
SELECT [key], Product_ID, rank
FROM CONTAINSTABLE(ProductSearchIndexData, [Text], '("exp*")')
where Product_ID = 946
【讨论】:
好吧,一切都完全一样……对我来说,这看起来像是一个错误。我通过使用动态 sql 的额外开销将所有内容更改为对我有用的方式。无论如何,非常感谢您的意见...以上是关于包含和可包含之间的区别?的主要内容,如果未能解决你的问题,请参考以下文章