为简单起见,假设我有两个字段:TRIP_START_DATE(日期格式)和TRIP_NIGHTS。
我可以运行一个简单的聚合,它将日期转换为一周的日期:
aggs <- '{
"aggs": {
"dept": {
"filter": {
"range": {
"TRIP_START_DATE": {
"gte": "2014-01-01",
"lte": "2014-12-31"
}
}
},
"aggs": {
"weekday": {
"terms": {
"script": "Date date = new Date(doc[\'TRIP_START_DATE\'].value) ; java.text.SimpleDateFormat format = new java.text.SimpleDateFormat(\'EEE\');format.format(date)"
}
}
}
}
}
}'
是否可以添加另一个聚合,每个工作日返回平均TRIP_NIGHTS?
感谢您的帮助。
卡洛斯
答案 0 :(得分:0)
我主要通过反复试验找到答案:
aggs <- '{
"aggs": {
"dept": {
"filter": {
"range": {
"TRIP_START_DATE": {
"gte": "2014-01-01",
"lte": "2014-12-31"
}
}
},
"aggs": {
"weekday": {
"terms": {
"script": "Date date = new Date(doc[\'TRIP_START_DATE\'].value) ; java.text.SimpleDateFormat format = new java.text.SimpleDateFormat(\'EEE\');format.format(date)"
},
"aggs": {
"stay": {
"percentiles": {
"script": "doc[\'TRIP_NIGHTS\'].value",
"percents": [
50
]
}
}
}
}
}
}
}
}'
卡洛斯