如何在clickhouse中进行分页

u3r8eeie  于 2021-07-15  发布在  ClickHouse
关注(0)|答案(2)|浏览(2165)

你能建议我怎样在“点击屋”里分页吗?在ElasticSearch中,我做如下聚合查询。这里ElasticSearch取参数partition number和partition size并给出结果。假设总共有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();
1hdlvixo

1hdlvixo1#

根据规范,limit和offset的通用sql语法将起作用: LIMIT n, m 允许您在跳过前n行之后从结果中选择前m行。这个 LIMIT m OFFSET n 还支持语法。
https://clickhouse.yandex/docs/en/query_language/select/#limit-条款

mgdq6dx1

mgdq6dx12#

我想你只想选择结果集的一个子集?我还不需要这样做,但似乎可以指定返回数据的格式(https://clickhouse-docs.readthedocs.io/en/latest/formats/index.html)从那里开始。例如,选择^^文档中显示的一种json格式,然后从json响应中获取适合您的情况的结果子集。

相关问题