当前位置: 首页 > news >正文

MYSQL order 、group 与row_number详解

一、order by

order by A ASC, B DESC,C ASC …

上述语句会先按照A排序,当A相同的时候再按照B排序,当B相同的再按照C排序,并会不按照ABC组合一起排序

二、group by

group by A,B,C…

select 中的字段必须是group by中的字段,但是聚合函数中的参数字段没有必须出现在 group by中

select A , B ,count(*) from t1 group by A,B,C
select A , B ,C,count(*) from t1 group by A,B,C
select A , B ,count(C) from t1 group by A,B,C
# 语法错误,应该使用having
select A , B ,count(C) as countABC  from t1  where countABC >3  group by A,B,C
select A , B ,count(C) as countABC  from t1  having countABC >3  group by A,B,C select A , B ,count(C) from t1 group by A,B,Cselect A ,count(*) from t1 group by A 与 select A ,count(A) from t1 group by A 
与 
select A ,count(B) from t1 group by A  效果一致select A ,count(distinct B) from t1 group by A 
与
select A ,B,count(*) from t1 group by A ,B 效果一致select A ,sum(B) from t1 group by A 
select A ,max(B) from t1 group by A 
select A ,min(B) from t1 group by A 

三、row_number 窗口排名函数

row_number() over ( [partition by column] order by order_expression [asc|desc]) as ranking
该方法常用于排名、连续登陆数统计,部门业绩排名

row_number 无并列排名,强制连续序号 例如 1,2,3
rank 允许并列排名,后续序号不连续 例如 1,1,3
dense_rank() 允许并列排名,后续序号连续 例如 1,1,2

count(*) 统计所有行数,包括NULL
count(column) 统计column字段非NULL的行数

相关文章:

  • 操作系统期末复习(三)——内存管理
  • C#在 .NET 9.0 中启用二进制序列化:配置、风险与替代方案
  • TDengine 高可用——三副本
  • C 语言学习笔记(指针3)
  • Qt C++实现马的遍历问题
  • python 打卡DAY27
  • Vue3项目无法在IE浏览器运行
  • 内存泄漏修复示例
  • 101个α因子#27
  • 第4周_作业题_逐步构建你的深度神经网络
  • C++静态成员变量与对象生命周期解析
  • 前端学习笔记——Promis.All
  • HarmonyOS:帧率和丢帧分析实践
  • 齿轮,链轮,同步轮,丝杆传动sw画法
  • 十进制转二进制
  • Intel oneAPI对OpenCL 的支持
  • kafka在线增加分区副本数
  • OpenCV CUDA 模块图像过滤------创建一个高斯滤波器函数createGaussianFilter()
  • 【计算机网络 第8版】谢希仁编著 第五章运输层 题型总结1 UDP和TCP报文格式
  • 基于labview的声音采集与存储分析系统
  • 国家开发银行网站/关键字是什么意思
  • 大方县住房城乡建设局网站/重庆seo团队
  • 注册成立一个公司需要多少钱/福州百度seo
  • 彩票类网站是如何做代理的/24小时最新国际新闻
  • wap网站是什么意思/个人推广网站
  • 做头像一个字的网站/南宁seo网络推广