8

是否可以通过自由文本匹配的相关性对 SQL Server 2005 中的结果进行排序?在 MySQL 中,您可以在 ORDER BY 部分中使用(大致等效的)MATCH 函数,但我在 SQL Server 中没有发现任何等效函数。

来自MySQL 文档

对于表中的每一行,MATCH() 返回一个相关值;也就是说,搜索字符串与 MATCH() 列表中命名的列中该行中的文本之间的相似性度量。

因此,例如,您可以按票数排序,然后按相关性排序,最后按创建日期排序。这是可以做到的,还是我坚持只返回匹配值而没有这种排序能力?

4

2 回答 2

4

如果您正在使用,FREETEXTTABLE那么它会返回一个列名Rank,所以order by Rank应该可以工作。我不知道其他自由文本搜索方法是否也返回此值。你可以试一试。

于 2008-09-10T07:01:57.857 回答
2

两者FREETEXTTABLECONTAINSTABLE都将返回该[RANK]列,但请确保您使用正确的变体或合并它们以获得所有适当的结果。

于 2008-09-12T02:19:20.080 回答