Microsoft не применила способ добиться этого, вы можете только взвесить ключевые слова, как это было реализовано. http://msdn.microsoft.com/en-us/library/ms187787.aspx (Прочитайте параграф G.)
Я попытался сделать альтернативный способ сделать это, надеюсь, его можно будет использовать.
Я взвешиваю SearchKeyWords = 5, PTitle = 4, PDescription = 3, Presentation = 2. Эти значения суммируются и упорядочиваются
SELECT Id,SearchKeyWords, PTitle, PDescription, Presentation, Category, ManufacturerId, SUM(srank) ranked
FROM (
SELECT Id,SearchKeyWords, PTitle, PDescription, Presentation, Category, ManufacturerId, 5 srank
FROM V_ProductForSearch
WHERE CONTAINS ((SearchKeyWords), @KeyWords)
UNION ALL
SELECT Id,SearchKeyWords, PTitle, PDescription, Presentation, Category, ManufacturerId, 4 srank
FROM V_ProductForSearch
WHERE CONTAINS ((PTitle), @KeyWords)
UNION ALL
SELECT Id,SearchKeyWords, PTitle, PDescription, Presentation, Category, ManufacturerId , 3 srank
FROM V_ProductForSearch
WHERE CONTAINS ((PDescription), @KeyWords)
UNION ALL
SELECT Id,SearchKeyWords, PTitle, PDescription, Presentation, Category, ManufacturerId, 2 srank
FROM V_ProductForSearch
WHERE CONTAINS ((Presentation), @KeyWords) ) a
GROUP BY Id,SearchKeyWords, PTitle, PDescription, Presentation, Category, ManufacturerId
ORDER BY SUM(srank)
person
t-clausen.dk
schedule
12.08.2011