大数据ClickHouse进阶(十五):ClickHouse的LIMIT BY和 LIMIT子句

Posted Lansonli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据ClickHouse进阶(十五):ClickHouse的LIMIT BY和 LIMIT子句相关的知识,希望对你有一定的参考价值。

文章目录

ClickHouse的LIMIT BY和 LIMIT子句

一、LIMIT BY子句

二、LIMIT 子句


ClickHouse的LIMIT BY和 LIMIT子句

一、LIMIT BY子句

LIMIT BY 子句运行在Order by 之后和LIMIT 之前,能够按照指定分组,最多返回前n行数据,如果数据总行少于n行,则按实际数量返回,常用于TOPN的查询场景,功能类似Hive中的开窗函数。

LIMIT BY 的常规语法如下:

LIMIT n BY express

n指的是获取几条数据;express通常是一到多个字段,即按照express分组获取每个分组的前n条数据。

用法示例如下:

#目前有表mt_tbl2,数据如下:
node1 :) select * from mt_tbl2;

#查询表mt_tbl2中每个省份对应的totalcount top2最大值
node1 :) select province,totalcount from mt_tbl2 order by totalcount desc limit 2 by province;

 

除了常规语法外,LIMIT BY 也支持跳过offset偏移量获取数据,具体语法如下:

#按照express分组,获取跳过y行后的top n行数据。
LIMIT n offset y BY express
#简化为
LIMIT y,n BY express

举例:获取表mt_tbl2中每个省份第二、第三大销售额

node1 :) select province,totalcount from mt_tbl2 order by totalcount desc limit 2 offset 1 by province;

​​​​​​​二、LIMIT 子句

LIMIT 子句用于返回指定的前n行数据,常用于分页场景,它的三种语法形式如下:

#返回前n行数据
LIMIT n
#指定从第m行开始返回前n行数据
LIMIT n OFFSET m
#指定从第m行开始返回前n行数据简化写法
LIMIT m,n

 

  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

以上是关于大数据ClickHouse进阶(十五):ClickHouse的LIMIT BY和 LIMIT子句的主要内容,如果未能解决你的问题,请参考以下文章

大数据ClickHouse(十五):ClickHouse SQL语法之DDL 操作讲解

大数据ClickHouse进阶(二十六):ClickHouse数据备份

大数据ClickHouse进阶:ClickHouse的Join子句

大数据ClickHouse进阶(二十三):ClickHouse用户配置

大数据ClickHouse进阶(二十四):ClickHouse权限管理

大数据ClickHouse进阶:ClickHouse 数据查询