Имеется индекс со следующей конфигурацией:
index inns
{
type = rt
path = /data/manticoresearch/inns
rt_mem_limit=1024M
morphology = stem_enru
index_exact_words = 1
expand_keywords = 1
min_infix_len = 3
blend_chars = -
charset_table = 0..9, english, russian, _, U+0401->U+0435, U+0451->U+0435
ondisk_attrs = pool
rt_field = trade_name
rt_attr_string = trade_name
}
В индексе пока лежат всего три строки:
id | trade_name
1 | Анальгин
2 | Анальгин-Нео
3 | Анальгин Экстра
Есть потребность получить только строку с trade_name Анальгин. Запрос вида:
SELECT trade_name FROM inns MATCH('@trade_name ^анальгин$');
возвращает первые две строки, т.е. Анальгин-Нео для меня лишний. Как в данном случае получить точный поиск по строке?
В show meta; я вижу след. ключевые слова:
| keyword[0] | *анальгин*
| keyword[1] | =анальгин
| keyword[2] | анальгин
Я пробовал отключать expand_keywords в конфиге индекса, но это не помогло. Запрос всё так же продолжает отдавать лишнюю запись. Хотя после отключения в meta был только
keyword[0] | анальгин