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
ISABOUTbeing replaced with? - DO I even NEED any extra
SQL Commandthere? ( 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