Export (0) Print
Expand All

Searching for Words or Phrases Using Weighted Values (Weighted Term)

You can use CONTAINS or CONTAINSTABLE to search for words or phrases and specify a weighting value. Weight, measured as a number from 0.0 through 1.0, indicates the degree of importance for each word and phrase within a set of words and phrases. A weight value of 0.0 is the lowest, and a weight value of 1.0 is the highest.

The following example shows a query that searches for all customer addresses, using weight values, in which any text beginning with the string "Bay" has either "Street" or "View". SQL Server 2008 gives a higher rank to those rows with more of the words specified.

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

A weighted term can be used in conjunction with any of the other four types of terms, namely simple term, prefix term, generation term, and proximity term.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft