У меня есть таблица продуктов, и я хочу выполнить поиск по столбцу Tag , результаты которого должны быть отсортированы по количеству появлений слов.
ID | Tag
---------------------------------------
1 | LG television
2 | BOSCH vacuum cleaner 55 mm
3 | SONY home theater 55 watt
---------------------------------------
Строка для поиска: LG 55 вакуумный кинотеатр для дома
Желаемые результаты:
1. SONY home theater 55 watt (contains three words: 55,theater,home)
2. BOSCH vacuum cleaner 55 mm (contains two words: 55,vacuum)
3. LG television (contains one word: LG)
Существует решение в Найти строку по количеству слов , которая использует LIKE и очень медленная .
Я хочу реализовать это с помощью FULLTEXT search
ОБНОВЛЕНИЕ : я пробовал приведенное ниже решение, но результаты неверны
SELECT ft.[Rank], p.Tag
FROM tblProducts AS p
INNER JOIN FREETEXTTABLE(tblProducts, Tag, 'LG 55 vacuum theater home') AS ft
ON ft.[Key] = p.ProductID
ORDER BY ft.[Rank] DESC;