In MS SQL Full-text search, I'm using ISABOUT in my queries.
For example, this should return the top 10 ProductIDs
(PK) with a RANK
Field in the ProductDetails
Table
SELECT *
FROM CONTAINSTABLE( ProductDetails, *, ISABOUT("Nikon" WEIGHT (1.0), "Cameras" Weight(0.9)), 10 )
However, according to the SQL Documentation ISABOUT
is deprecated.
So, I have two questions:
- What is
ISABOUT
being replaced with? - DO I even NEED any extra
SQL Command
there? ( IOW, would just putting the search phrase 'Nikon Cameras' be better? )
What I was originally trying to accomplish here was to weight the first word the highest, then the second word lower, and keep descending to 0.5 where I would just rank the remaining words at 0.5.
My logic ( and perhaps it's flawed ) was that people's most relevant search words usually happen near the beginning of a phrase ( in English ).
- Am I going about this the wrong way?
- Is there a better way?
- Am I asking too many questions? (^_^)
Thanks all for your time...
Your link above refers to Enterprise Search, but for SQL Server full-text search, ISABOUT is still supported as part of the CONTAINS predicate and CONTAINSTABLE function.
This question was also covered in a post to the MSDN SQL Server Search forum.
ISABOUT
adds custom weights to your words which help in ranking the documents returned. For CONTAINS()
, it does not do any ranking, this form has no influence.
来源:https://stackoverflow.com/questions/2581014/what-should-the-sql-keyword-isabout-deprecated-be-replaced-with