2017-09-14 5 views
0

1人の販売者が本を販売した時間を格納する(販売時間、書籍、販売人)のようなSQLテーブルストア情​​報があるとします。我々は、ほとんどの販売によって販売されている人気のある本のリストを持っていたい。ペアからのElasticSearch Count Distinct値

SQLはelasticsearchで、このような検索を実現するためにどのようにこの

select book, count (sale-person) 
from select distinct (book, sale-person) from table 
group by book 
order desc 

のようなものですか?

は、我々のデータは、この

{ "time": "time-value", 
    "book" : "book name", 
    "sales" : "person" 
} 

おかげのようなものであると仮定します。

答えて

1

私がうまく理解していれば、ネストされた集計を行いたいですか?以下のような

何か:

GET /my_index/_search 
{ 
    "size": 0, 
    "query": { 
     "match_all" : {} 
    }, 
    "aggs": { 
     "time_windows": { 
     "date_histogram": { 
      "field": "time", 
      "interval" : "1h" 
     }, 
     "aggs": { 
      "books": { 
       "terms": { 
        "size": 5, 
        "field": "book" 
       } 
      } 
     } 
     } 
    } 
} 
+0

は、これは正しいアプローチです。ありがとう! – Nathan

関連する問題