Группировка по частям поля в Elasticsearch - PullRequest
0 голосов
/ 09 июля 2020

Я новичок в Elasticsearch, поэтому, пожалуйста, go полегче.

У меня есть список подтипов продуктов, которые являются частью полного идентификатора продукта, который также содержит высоту и ширину продукта.

Пример: Подтип продукта 15, Высота 5, Ширина 5> Идентификатор продукта: S15H5W5

Теперь этот подтип продукта является частью нескольких типов продуктов, которые также включены в индекс.

Итак, данные выглядят следующим образом:

{ PID: "S15H5W5", PT: "A-1" }
{ PID: "S15H7W7", PT: "A-1" }
{ PID: "S20H10W10", PT: "A-1" }
{ PID: "S15H7W5", PT: "B-2" }
{ PID: "S50H8W19", PT: "C-3"}

Ожидаемый результат:

{ SUBTYPE: "15", PC: [ { PT: "A-1", COUNT: "2" }, { PT: "B-2", COUNT: "1" } ]  
{ SUBTYPE: "20", PC: [ { PT: "A-1", COUNT: "1" } ]  
{ SUBTYPE: "50", PC: [ { PT: "C-3", COUNT: "1" } ]

Я могу сопоставить части идентификатора продукта (* 15 * * 20 * * 50 *) с помощью query_string, но я не могу использовать подтип продукта в качестве поля группировки, потому что он не является частью исходной базы данных.

Могу ли я что-то сделать? Спасибо!

...