In Solr, у меня есть поле, называемое Code_string и имеет значение, как S102.103.111_1, S102.103.111_2Solr не возвращают результаты
при поиске с «S102.103.111» .it это меня возвращение нулевые результаты.
Любые входы на нем?
In Solr, у меня есть поле, называемое Code_string и имеет значение, как S102.103.111_1, S102.103.111_2Solr не возвращают результаты
при поиске с «S102.103.111» .it это меня возвращение нулевые результаты.
Любые входы на нем?
Как сказал Николай, поля типа String по умолчанию не анализируются. Но текстовые поля text_general будут анализироваться. Вы можете просто изменить свое имя поля в Code_string_txt, тогда оно будет доступно для поиска. В противном случае, определите пользовательское поле в конфе/schema.xml как этот
<field name="Code_string" type="text_general" indexed="true" stored="true" multiValued="true"/>
Поля типа String не анализируются по умолчанию. (Предполагаетесь, что вы используете StrField
, а также проверить Solr документации: Field Types Included with Solr)
Так что вам нужно либо использовать запрос по шаблону: S102.103.111*
или определить собственный тип поля с пользовательским анализатором (Посмотрите на Understanding Analyzers, Tokenizers, and Filters).
Конечно, это будет работа, но 'StandardTokenizer' расщепляется пример строка двух лексем' S102.103.111' и '1'. Как я понимаю, проблема @sree может быть более подходящей особенностью токенизатора, которая предоставляет токены типа 'S102.103.111',' S102.103' и 'S102'. – Nikolay
Да, я согласен с тобой @Nikolay ... – Kumar