В полнотекстовом поиске MS SQL я использую ISABOUT в своих запросах.
Например, это должно вернуть первые 10 ProductIDs
(PK) с полем RANK
в таблице ProductDetails
SELECT *
FROM CONTAINSTABLE( ProductDetails, *, ISABOUT("Nikon" WEIGHT (1.0), "Cameras" Weight(0.9)), 10 )
Однако, согласно документации SQL ISABOUT
устарела.
Итак, у меня два вопроса:
- Чем заменяется
ISABOUT
на
- НУЖНА ли мне еще какая-нибудь
SQL Command
там? (IOW, было бы лучше поместить фразу поиска 'Nikon Cameras'?)
То, что я первоначально пытался сделать здесь, это взвесить первое слово самым высоким, затем вторым словом более низким и продолжать опускаться до 0,5, где я бы просто присвоил остальным словам значение 0,5.
Моя логика (и, возможно, она ошибочна) заключалась в том, что наиболее релевантные поисковые слова людей обычно встречаются в начале фразы (на английском языке).
- Я поступаю неправильно?
- Есть ли лучший способ?
- Я задаю слишком много вопросов? (^ _ ^)
Спасибо всем за ваше время ...