暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Mysql:实现row_number分组排序功能

SQL数据分析 2021-04-29
1714

Mysql:实现row_number分组排序功能

提示

mysql8.0已经实现了窗口分析函数,可以直接使用了,8.0以前的版本,需要手动写的,这里简单介绍如何写;

for example

  1. userID  |  logindate

  2. 1000       2014-01-10

  3. 1000       2014-01-11

  4. 1000       2014-02-01

  5. 1000       2014-02-02

  6. 1001       2014-02-01

  7. 1001       2014-02-02

  8. 1001       2014-02-03

  9. 1001       2014-02-04

  10. 1001       2014-02-05

  11. 1002       2014-02-01

  12. 1002       2014-02-03

  13. 1002       2014-02-05

复制

解决办法

MySQL 查询

  1. set @row=0 ;

  2. set @mid='' COLLATE utf8_unicode_ci;

  3. SELECT userid, logindate,

  4.       case when @mid = userid then @row:=@row+1 else @row:=1 end rownum,

  5.       @mid:=userid

  6. FROM users_logindate

  7. order by userid,logindate desc

复制

参考

Mysql:实现rownumber分组排序功能木奶牛_新浪博客

sql - ROW_NUMBER() in MySQL - Stack Overflow


文章转载自SQL数据分析,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论