您能建议我如何在Click House中进行分页吗? 弹性搜索中的Dor示例我做如下聚合查询。在这里,弹性搜索采用参数分区号和分区大小并给出结果。假设总共有100条记录,如果分区大小为10且分区号为2,则将获得11-20条最新记录。
考虑到插入表中的数据,我们如何在Click House中做到这一点。
SearchResponse response = elasticClient.prepareSearch(index)
.setTypes(documentType)
.setQuery(boolQueryBuilder)
.setSize(0)
.addAggregation(AggregationBuilders.terms("unique_uids")
.field(Constants.UID_NAME)
.includeExclude(new IncludeExclude(partition,numPartitions))
.size(Integer.MAX_VALUE))
.get();
答案 0 :(得分:1)
根据规范,限制和偏移的通用sql语法将起作用:
LIMIT n, m
允许您在跳过前n行之后从结果中选择前m行。还支持LIMIT m OFFSET n
语法。
https://clickhouse.yandex/docs/en/query_language/select/#limit-clause
答案 1 :(得分:0)
我认为您只想选择结果集的一个子集?我还不需要这样做,但是似乎您可以指定希望CH返回(https://clickhouse-docs.readthedocs.io/en/latest/formats/index.html)中的数据并从那里返回的格式。例如,选择^^文档中所示的JSON格式之一,然后从JSON响应中获取适合您情况的结果子集。