mysql5.7 mysql8窗口函数分组排序并在组内编号

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql5.7 mysql8窗口函数分组排序并在组内编号相关的知识,希望对你有一定的参考价值。

参考技术A 表结构

ROW_NUMBER() OVER (PARTITION BY category ORDER BY id) AS idx
含义: 按 category 分组, 组内按 id 排序, 组内排序的序号(行号)作为列 idx

ROW_NUMBER() 在 mysql8 才开始支持, 对于msqyl5.7或对应版本的MariaDB,相同功能的实现可以参考如下 sql

要点:

可以看到,两个结果,在分组变化的地方,idx开始了重新编号,且结果与 ROW_NUMBER() 一致.

以上是关于mysql5.7 mysql8窗口函数分组排序并在组内编号的主要内容,如果未能解决你的问题,请参考以下文章

springboot2.x+MyBatis-Plus+mysql5.7 动态拼接sql语句 分页查询 自定义sql 查询条件 分组 排序

hive关于窗口函数的使用

mysql5.7使用变量进行分组排名并筛选

mysql5.7使用变量进行分组排名并筛选

窗口函数,尝试从连接表中的列中按 created_at 排序而不分组

MySQL5.7实现ROW_NUMBER窗口函数功能SQL