2013-10-25 4 views
0

Я упаковал титульное поле со списком ниже:Solr алфавитная сортировка проблема. Сортировка в верхнем регистре, то в нижний регистр для поля типа строка

  1. запрашиваемыми хорошо
  2. Но ответ лучше
  3. присоединиться к группе, как этот
  4. Вы находитесь лучшие
  5. hey dudes. whass до

Когда я сортировкой этот ASC (& сортировки = название ASC)

  1. Запрашиваемая хорошо
  2. Но ответ лучше
  3. Вы лучший
  4. эй чуваки , whass до
  5. присоединиться к группе, как этот

и (& сортировки = Заголовок по убыванию)

  1. присоединиться к группе, как этого
  2. эй чуваки. whass до
  3. Вы лучшие
  4. Но ответ лучше
  5. Запрашиваемых хорошо

Но я ожидаю результат, как: (& сорта = название ASC)

  1. Запрашиваемых is good
  2. Но отвечаю наилучшим образом
  3. hey dudes. whass до
  4. присоединиться к группе, как этот
  5. Ты самый лучший

Schema.xml

<field name="title" type="text_general" indexed="true" stored="true"/> 
<field name="title_sort" type="string" indexed="true" stored="false"/> 
<copyField source="title" dest="title_sort" /> 

Я использую поле title_sort для сортировки (также пытались поле название)

Пожалуйста, скажите мне, где я буду ошибся

+0

Я использовал "alphaOnlySort" FieldType и его работал. –

ответ

1

Нельзя использовать sort = title_sort ASC? Не потому, что вы его создали? text_general включает LowerCaseFilterFactory, который удаляет различие.

+0

Можете ли вы объяснить LowerCaseFilterFactory –

+1

@AlauddinAnsari LowerCaseFilterFactory означает, что даже если вы отправили его верхние символы, они были сделаны в нижнем регистре во время анализа. Итак, теперь в индексе индексируется 'ask',' but' и т. Д. Один трюк - вы можете сделать facet.field = название & q = id: , чтобы увидеть маркеры, как они были проиндексированы в разделе граней. –

Смежные вопросы