我已经查阅了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,爱奇耶
答案 0 :(得分:0)
不幸的是,CrateDB不以这种方式支持范围查询。它在WHERE子句中执行,但在GROUP BY子句中不执行。尽管CrateDB确实支持百分位数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并以此方式发出此查询。