我已经查阅了crateDB官方文档,但是我还没有找到如何执行range查询。在Elasticsearch中,它是按如下方式完成的:
curl -X GET "localhost:9200/_search" -H 'Content-Type: application/json' -d'
{
"aggs" : {
"price_ranges" : {
"range" : {
"field" : "price",
"ranges" : [
{ "to" : 100.0 },
{ "from" : 100.0, "to" : 200.0 },
{ "from" : 200.0 }
]
}
}
}
}
'
{
"size": 0,
"aggs": {
"histogram_bucket": {
"histogram": {
"field": "dport",
"interval": 5000
}
}
}
}有解决方案吗?thx,爱奇艺
发布于 2018-07-25 16:14:35
不幸的是,CrateDB不支持这种方式的范围查询。它在WHERE子句中执行,但不在GROUP BY子句中执行。虽然CrateDB确实支持percentiles https://crate.io/docs/crate/reference/en/latest/general/builtins/aggregation.html#percentile,但它目前没有任何定义直方图存储桶和间隔的功能。
但是,您可以公开elasticsearch API https://crate.io/docs/crate/reference/en/0.57/configuration.html#elasticsearch-http-rest-api并以这种方式发出此查询。
https://stackoverflow.com/questions/50985456
复制相似问题