【问题标题】:Returning Rank with Full Text Search Contains Query全文搜索返回排名包含查询
【发布时间】:2012-05-17 17:46:11
【问题描述】:

我已经在 Sql Server 2008 表之一上实现了全文搜索。 使用包含搜索某些单词时,查询工作正常。

我想根据全文搜索的排名功能过滤掉结果。我正在编写以下查询

SELECT rank, * FROM Mas_text
 WHERE CONTAINS(text, 'Wanted and Engineers')

此查询无法编译并给我“无效列名'RANK'”的错误

请提出建议。

【问题讨论】:

    标签: sql-server-2008 full-text-search


    【解决方案1】:

    rank 函数不适用于 CONTAINS 查询。您必须使用 CONTAINSTABLE 才能获得排名。见here

    应该是这样的:

    SELECT Mas_text.*, k.rank
    FROM Mas_text 
        INNER JOIN CONTAINSTABLE(Mas_text, text, 'Wanted and Engineers') k
        ON Mas_text.primarykey = k.[Key]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多