Solr Transform для разделения данных на несколько полей

Я пытаюсь создать новое ядро ​​​​в Solr и импортировать в него данные, но я отображаю эти данные в сетке кендо, и мне нужно отображать данные из одного столбца из БД в двух разных полях (столбцах).

Вот данные в столбце, который мне нужно разделить на два разных столбца

10680756-1000-РАТ

Мне нужно разделить «10680756» на 1 с именем A и на другой столбец с именем B

это моя конфигурация данных и схема

<entity name="myTable" pk="testingId" 
query="select * from myTable" 
  >
  <field column="codeStatus" name="codeStatus"/> (this column has the data "10680756-1000-RAT")

Мне нужно показать это так:

Code Status            A           B
10680756-1000-RAT    10680756     1000

person The Confused Coder    schedule 30.05.2016    source источник


Ответы (1)


Вы можете использовать обработчик запросов на обновление, чтобы разделить поле на две части. отдельные поля (и при необходимости сохранить исходное поле), например, с помощью StatelessScriptUpdateProcessor и написать небольшой фрагмент javascript, чтобы разделить поле и добавить два новых поля.

Другой вариант — использовать PatternReplaceFilter или PatternReplaceCharFilter вместе с двумя copyField инструкциями. Используйте PatternReplaceFilter, чтобы удалить все, кроме той части токена, которую вы хотите сохранить.

person MatsLindh    schedule 30.05.2016
comment
Спасибо, а можно пример привести? - person The Confused Coder; 31.05.2016
comment
Я заставил его работать через regexTransformer, я использовал это <field column="dstcol" regex="^.{0}(.*?)(?=-)" sourceColName="sourcecol"/> - person The Confused Coder; 01.06.2016