大数据ClickHouse进阶(十四):ClickHouse的HAVING和ORDER BY子句
【摘要】 ClickHouse的HAVING和ORDER BY子句一、HAVING子句ClickHouse也支持Having子句,需要与group by 同时出现,不能单独使用,它能够在聚合计算之后实现二次过滤数据。操作如下:node1 :) select province,city,item,sum(totalcount) as total from mt_tbl2 group by provinc...
ClickHouse的HAVING和ORDER BY子句
一、HAVING子句
ClickHouse也支持Having子句,需要与group by 同时出现,不能单独使用,它能够在聚合计算之后实现二次过滤数据。操作如下:
node1 :) select province,city,item,sum(totalcount) as total from mt_tbl2 group by province,city,item having total >1000;
┌─province─┬─city─┬─item─────┬─total─┐
│ 上海 │ 嘉定 │ 华为手机 │ 1400 │
└──────────┴──────┴──────────┴───────┘
二、ORDER BY 子句
Order by 子句通过声明排序键来指定查询数据返回时的顺序。在MergeTree表引擎中也有Order by 参数用于指定排序键。在MergeTree表引擎中指定order by 后,数据在各个分区内按照其定义的规则排序,这是一种分区内的局部排序,如果在查询时数据跨越了多个分区,则他们返回的顺序是无法预知的,每一次查询返回的顺序都有可能不同。这种情况下,如果希望数据总是能够按照期望的顺序返回,就需要借助Order by 子句来指定全局排序。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)