SQL关键字“ISABOUT”[不推荐使用?]应该替换为什么?

时间:2010-04-05 20:35:39

标签: sql sql-server deprecated full-text-search isabout

在MS SQL全文搜索中,我在查询中使用ISABOUT。

例如,这应该返回前{10} ProductIDs(PK)RANK表中的ProductDetails字段

SELECT * 
FROM CONTAINSTABLE( ProductDetails, *, ISABOUT("Nikon" WEIGHT (1.0), "Cameras" Weight(0.9)), 10 )

但是,根据SQL Documentation ISABOUT已弃用。

所以,我有两个问题:

  1. ISABOUT被替换为什么?
  2. 我还需要额外SQL Command吗? (IOW,只是把搜索短语'尼康相机'变得更好?)
  3. 我最初试图在这里完成的是将第一个单词加权最高,然后加第二个单词降低,然后继续下降到0.5,我将其余单词排在0.5。

    我的逻辑(也许是有缺陷的)是人们最相关的搜索词通常发生在短语的开头附近(英文)。

    • 我是以错误的方式解决这个问题吗?
    • 有更好的方法吗?
    • 我问了太多问题吗? (^ _ ^)

    谢谢大家的时间......

2 个答案:

答案 0 :(得分:6)

上面的链接指的是企业级搜索,但对于SQL Server全文搜索,仍然支持ISABOUT作为CONTAINS谓词和CONTAINSTABLE函数的一部分。

a post to the MSDN SQL Server Search论坛也讨论了这个问题。

答案 1 :(得分:2)

ISABOUT为您的单词添加自定义权重,这有助于对返回的文档进行排名。对于CONTAINS(),它没有进行任何排名,这种形式没有影响。