What should the SQL keyword “ISABOUT” [deprecated?] be replaced with?

我与影子孤独终老i 提交于 2019-12-07 09:21:31

问题


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:

  1. What is ISABOUT being replaced with?
  2. 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...


回答1:


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.




回答2:


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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!