加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql如何实现row_number详解

发布时间:2023-09-02 13:58:14 所属栏目:MySql教程 来源:
导读:查询test表按group_id分组取sort_id前100个

SELECT id AS '原数据ID',group_id AS '分组ID',sort_id AS '排序条件',num AS '排名'

FROM

(SELECT @row_number := C
查询test表按group_id分组取sort_id前100个
 
SELECT id AS '原数据ID',group_id AS '分组ID',sort_id AS '排序条件',num AS '排名'
 
FROM
 
    (SELECT  @row_number := CASE WHEN  @customer_no = group_id  THEN  @row_number + 1  ELSE  1 END   AS  num /*如果同group_id那么排名加1,否则更新为1*/
 
    ,@customer_no := group_id  AS  group_id /*重新加载group_id*/
 
    ,id , sort_id /*原有数据*/
 
 FROM  test,( SELECT  @customer_no := 0,@row_number := 0)  AS  t
 
 ORDER BY group_id ,sort_id DESC ,id)a
 
WHERE num<=100
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章