使用加权值搜索词或短语(加权词)

您可以使用 CONTAINS 或 CONTAINSTABLE 来搜索词或短语以及指定加权值。权值用介于 0.0 到 1.0 之间的一个数字来表示,用于指示一组词和短语中的每个词和短语的重要程度。权值的最低值是 0.0,最高值是 1.0。

示例

下例所示的查询使用加权值搜索所有符合以下条件的客户地址:地址中任何以字符串“Bay”开头的文本包含“Street”或“View”。SQL Server 2008 对那些包含较多指定词的行赋予较高的排名。

USE AdventureWorks2008R2;
GO
SELECT AddressLine1, KEY_TBL.RANK 
FROM Person.Address AS Address INNER JOIN
CONTAINSTABLE(Person.Address, AddressLine1, 'ISABOUT ("Bay*", 
         Street WEIGHT(0.9), 
         View WEIGHT(0.1)
         ) ' ) AS KEY_TBL
ON Address.AddressID = KEY_TBL.[KEY]
ORDER BY KEY_TBL.RANK;
GO

加权词可以与其他四种类型的词结合起来使用,这四种类型的词为简单词、前缀词、派生词和邻近词。