Я включил полнотекстовый индекс в моей таблице MySQL с анализатором NGRAM, как показано ниже: < /p>
SHOW VARIABLES LIKE 'ngram_token_size'; -- Default set to 2
ALTER TABLE MyTable ADD FULLTEXT INDEX FT_MyTable (value) WITH PARSER ngram;
OPTIMIZE TABLE MyTable;
< /code>
I вставила следующие записи в mytable: < /p>
INSERT INTO MyTable VALUES (1, 'file');
INSERT INTO MyTable VALUES (1, 'transformation');
INSERT INTO MyTable VALUES (1, 'prefixvedant');
INSERT INTO MyTable VALUES (1, 'trans');
INSERT INTO MyTable VALUES (1, 'ISADemo-LegacyPointer');
INSERT INTO MyTable VALUES (1, '#Sync');
INSERT INTO MyTable VALUES (1, 'prefixvedant_status');
INSERT INTO MyTable VALUES (1, 'midtale');
INSERT INTO MyTable VALUES (1, '#tale');
INSERT INTO MyTable VALUES (1, 'my name is vedant');
INSERT INTO MyTable VALUES (1, '#vedant');
INSERT INTO MyTable VALUES (1, 'coldplay_strawberrysnip.mp3');
INSERT INTO MyTable VALUES (1, 'tale');
INSERT INTO MyTable VALUES (1, 'sale');
INSERT INTO MyTable VALUES (1, '#storiesMeanstalesYes...');
INSERT INTO MyTable VALUES (1, '#stories_tales_Yes...');
INSERT INTO MyTable VALUES (1, 'stories_tales_Yes...');
INSERT INTO MyTable VALUES (1, 'coldplay-yellow');
INSERT INTO MyTable VALUES (1, 'prefixvedantsuffix');
INSERT INTO MyTable VALUES (1, 'prefixvedasuffix');
INSERT INTO MyTable VALUES (1, 'prefixvedsuffix');
INSERT INTO MyTable VALUES (1, 'prefix vedant suffix');
INSERT INTO MyTable VALUES (1, '#hellotale');
INSERT INTO MyTable VALUES (1, 'prefix_vedant_suffix');
INSERT INTO MyTable VALUES (1, 'prefixvedantstatues');
INSERT INTO MyTable VALUES (1, '#statue');
INSERT INTO MyTable VALUES (1, 'prefixvedantstatus');
INSERT INTO MyTable VALUES (1, 'prefixmysqlstatus');
INSERT INTO MyTable VALUES (1, 'prefixmysqlstatues');
INSERT INTO MyTable VALUES (1, 'prefixvedant status');
< /code>
Я хочу, чтобы записи с точными соответствиями слов (например, Tale, Midtale) появлялись в верхней части результатов при поиске таких терминов, как солома* и сказка*. Тем не менее, мой текущий запрос не приоритет точным совпадениям, и записи, такие как файл, Isademo-Legacypointer и продажа, появляются выше в результатах. Вот запрос, который я использую: < /p>
SELECT id, value, MATCH(value) AGAINST('>"tale" >"straw" "straw"
Подробнее здесь: https://stackoverflow.com/questions/797 ... rd-matches
MySQL Полнотекстовый поиск с NGRAM PARSER не приоритет точным совпадениям слов ⇐ MySql
Форум по Mysql
1755695813
Anonymous
Я включил полнотекстовый индекс в моей таблице MySQL с анализатором NGRAM, как показано ниже: < /p>
SHOW VARIABLES LIKE 'ngram_token_size'; -- Default set to 2
ALTER TABLE MyTable ADD FULLTEXT INDEX FT_MyTable (value) WITH PARSER ngram;
OPTIMIZE TABLE MyTable;
< /code>
I вставила следующие записи в mytable: < /p>
INSERT INTO MyTable VALUES (1, 'file');
INSERT INTO MyTable VALUES (1, 'transformation');
INSERT INTO MyTable VALUES (1, 'prefixvedant');
INSERT INTO MyTable VALUES (1, 'trans');
INSERT INTO MyTable VALUES (1, 'ISADemo-LegacyPointer');
INSERT INTO MyTable VALUES (1, '#Sync');
INSERT INTO MyTable VALUES (1, 'prefixvedant_status');
INSERT INTO MyTable VALUES (1, 'midtale');
INSERT INTO MyTable VALUES (1, '#tale');
INSERT INTO MyTable VALUES (1, 'my name is vedant');
INSERT INTO MyTable VALUES (1, '#vedant');
INSERT INTO MyTable VALUES (1, 'coldplay_strawberrysnip.mp3');
INSERT INTO MyTable VALUES (1, 'tale');
INSERT INTO MyTable VALUES (1, 'sale');
INSERT INTO MyTable VALUES (1, '#storiesMeanstalesYes...');
INSERT INTO MyTable VALUES (1, '#stories_tales_Yes...');
INSERT INTO MyTable VALUES (1, 'stories_tales_Yes...');
INSERT INTO MyTable VALUES (1, 'coldplay-yellow');
INSERT INTO MyTable VALUES (1, 'prefixvedantsuffix');
INSERT INTO MyTable VALUES (1, 'prefixvedasuffix');
INSERT INTO MyTable VALUES (1, 'prefixvedsuffix');
INSERT INTO MyTable VALUES (1, 'prefix vedant suffix');
INSERT INTO MyTable VALUES (1, '#hellotale');
INSERT INTO MyTable VALUES (1, 'prefix_vedant_suffix');
INSERT INTO MyTable VALUES (1, 'prefixvedantstatues');
INSERT INTO MyTable VALUES (1, '#statue');
INSERT INTO MyTable VALUES (1, 'prefixvedantstatus');
INSERT INTO MyTable VALUES (1, 'prefixmysqlstatus');
INSERT INTO MyTable VALUES (1, 'prefixmysqlstatues');
INSERT INTO MyTable VALUES (1, 'prefixvedant status');
< /code>
Я хочу, чтобы записи с точными соответствиями слов (например, Tale, Midtale) появлялись в верхней части результатов при поиске таких терминов, как солома* и сказка*. Тем не менее, мой текущий запрос не приоритет точным совпадениям, и записи, такие как файл, Isademo-Legacypointer и продажа, появляются выше в результатах. Вот запрос, который я использую: < /p>
SELECT id, value, MATCH(value) AGAINST('>"tale" >"straw" "straw"
Подробнее здесь: [url]https://stackoverflow.com/questions/79741094/mysql-full-text-search-with-ngram-parser-not-prioritizing-exact-word-matches[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия