3

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

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

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

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

请建议。

4

1 回答 1

6

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

应该看起来像这样:

SELECT Mas_text.*, k.rank
FROM Mas_text 
    INNER JOIN CONTAINSTABLE(Mas_text, text, 'Wanted and Engineers') k
    ON Mas_text.primarykey = k.[Key]
于 2012-05-09T08:18:00.893 回答