Я делал много успешных булевых поисков, однако 1 слово, кажется, останавливает его от отображения ожидаемых результатов.Логический поиск, игнорирующий слово
Ниже вы можете увидеть структуру таблицы сверху, с особым вниманием к содержимому тегов для этого тестового продукта.
Код в тексте упаковывают скриншот слишком мал:
SELECT
id,
name,
description,
price,
image
FROM
products
WHERE
MATCH(tags,name,description)
AGAINST ('hot*' IN BOOLEAN MODE)
Если я делаю поиск для «горячего», который является одним из тегов, она возвращает 0 результатов.
Однако, если я нахожу поиск «напитка», который является еще одним тегом, он находит продукт!
Я не могу понять, почему!
Как насчет других dbmses? –
И как в сторону, для @AlexCrooks, чтобы проверить это в вашей среде, добавьте «укусить» к поисковым словам и попробуйте еще раз («укусить», представляя собой четырехбуквенное слово, также «розовый», «синий» и т. Д .;]. но таким образом вы можете доказать себе, что это проблема.) – jcolebrand
@meder, читая мой разум, мой второй комментарий должен был быть @Quassnoi ~ Это относится к MSSQL или ORA или Postgresql? – jcolebrand