2014-10-16 7 views
0

Я пытаюсь создать в ElasticSearch запрос, который будет списки различных user_label.id каждый количествам respectiv:Граф отчетливый идентификатор, где поле существует

Образец документа выглядит это нравится:

{ 
    "_index": "labels", 
    "_type": "users", 
    "_id": "484", 
    "_version": 69, 
    "found": true, 
    "_source": { 
     "id": 484, 
     "is_complete": 1, 
     "language": "nl", 
     "user_label": [ 
      { 
       "guid": { 
        "163579": { 
         "order_id": 163579 
        } 
       }, 
       "id": "boleto" 
      } 
     ] 
    } 
} 

Картирование типа nested ,

"user_label" : { 
    "type" : "nested", 
    "properties" : { 
    "guid" : {}, 
    "id" : { 
     "type" : "string" 
    }, 
    "tag" : { 
     "type" : "string" 
    } 
} 
} 

Я хочу, чтобы построить таблицу, как:

+---------------+-------+ 
| boleto  | 32453 | 
| paid   | 34345 | 
| reminder_sent | 345 | 
+---------------+-------+ 

Я до сих пор это для языка, но нужна помощь в создании для user_label.id:

{ 
    "size": 0, 
    "aggs": { 
     "genders": { 
      "terms": { 
       "field": "language" 
      } 
     } 
    } 
} 

Пытались с помощью "field":"user_label.id", но это не работал. Я попытался это с типом properties и есть точка обозначения работ, но не шов, чтобы работать с типом nested

ответ

0

так после некоторого копания это результат:

{ 
    "size": 0, 
    "aggs": { 
     "user_label": { 
      "nested": { 
       "path": "user_label" 
      }, 
      "aggs": { 
       "id": { 
        "terms": { 
         "field": "user_label.id" 
        } 
       } 
      } 
     } 
    } 
} 
Смежные вопросы