1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/honeymoose-druid-docs-cn

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
limitspec.md 2.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
YuCheng Hu Отправлено 19.07.2021 23:53 9e96b69
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>

<script> (adsbygoogle = window.adsbygoogle || []).push({}); </script>

排序和限制(Sorting and Limiting)

[!WARNING] Apache Druid支持两种查询语言: Druid SQL原生查询。该文档描述了原生查询中的一种查询方式。 对于Druid SQL中使用的该种类型的信息,可以参考 SQL文档

limitSpec字段提供了对GroupBy结果集进行排序和限制的功能。 如果是对一个维度进行聚合且根据一个指标进行排序, 我们强烈建议使用 TopN查询 来替代, 性能会大大的提高。 可选项有:

DefaultLimitSpec

默认的limitSpec的语法如下:

{
    "type"    : "default",
    "limit"   : <optional integer>,
    "offset"  : <optional integer>,
    "columns" : [<optional list of OrderByColumnSpec>],
}

limit参数为要返回的最大行数

offset参数告诉Druid在返回结果的时候略过多少行。 如果 limitoffset 同时被设置了的话, offset 参数将首先生效, 紧跟着是 limit 。 例如, limit为100且offset为10的话, 将从第十行开始返回100行。 在内部,查询的执行是根据offset来扩展limit, 然后丢弃掉offset数量的行数,这意味着与增加limit相比, 增加offset将增加资源的使用。

limitoffset可以被用来实现分页。但是,请注意,如果在页面获取之间修改基础数据源的方式会影响整个查询结果,那么不同的页面不一定会彼此对齐。

OrderByColumnSpec

OrderbyColumnSpec标明如何去做排序。 每一个排序条件可以是 jsonString 或者如下格式的一个map:

{
    "dimension" : "<Any dimension or metric name>",
    "direction" : <"ascending"|"descending">,
    "dimensionOrder" : <"lexicographic"(default)|"alphanumeric"|"strlen"|"numeric">
}

如果只提供了维度(作为JSON字符串),那么默认的排序方式是按字典排序的升序。

对于 dimensionOrder 指定的排序的更多信息可以查看 Sorting Orders

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/honeymoose-druid-docs-cn.git
git@api.gitlife.ru:oschina-mirror/honeymoose-druid-docs-cn.git
oschina-mirror
honeymoose-druid-docs-cn
honeymoose-druid-docs-cn
master