参照https://www.cnblogs.com/CharlieLau/p/6737243.html

一、需求

  新加一个Sort 字段,初始值为1,按照parentID分组添加sort值。

       根据原数据的parentID,Postime排序,不同parentID值,sort 值从1开始重新增加

       mysql分组排序加序号

二、实现


 1 UPDATE co_test AS T1
 2 SET Sort = (
 3     SELECT
 4         T2.i
 5     FROM
 6         (
 7             SELECT
 8                 (
 9                     @i := CASE
10                     WHEN @parentCode = t1.ParentID THEN
11                         @i + 1
12                     ELSE
13                         1
14                     END
15                 ) AS i,
16                 (@parentCode := t1.ParentID),
17                 -- 设置 @parentCode等于上一个 ParentID
18                 t1.ID
19             FROM
20                 co_test t1,
21                 (
22                     SELECT
23                         @i := 0 ,@parentCode := '' -- 初始值
24                 ) AS t2
25             ORDER BY
26                 t1.ParentID,
27                 t1.PostTime
28         ) AS T2
29     WHERE
30         T1.ID = T2.ID
31 )

 


三、运行结果

  mysql分组排序加序号

 

相关文章:

  • 2021-08-29
  • 2021-07-03
  • 2022-01-01
  • 2022-01-01
  • 2021-11-26
  • 2021-12-21
  • 2022-12-23
猜你喜欢
  • 2021-12-31
  • 2021-10-14
  • 2021-01-09
  • 2021-04-04
  • 2021-11-04
  • 2021-08-06
  • 2021-12-16
相关资源
相似解决方案