gpt4 book ai didi

mysql - 列中每个重复项的递增计数器

转载 作者:可可西里 更新时间:2023-11-01 07:52:34 24 4
gpt4 key购买 nike

我有一张 table :

id | value
1 | -
1 | a
2 | b
1 | c
3 | d
2 | e

然后我需要一个从 1 开始的计数器列,用于 id 列中的每个不同值

期望的选择结果:

id | value | counter
1 | - | 1
1 | a | 2
2 | b | 1
1 | c | 3
3 | d | 1
2 | e | 2

我发现的只是计算重复项的数量等,而不是针对特定列的每个重复项的递增计数器...?

最佳答案

如果你不关心排序,只关心相应的行号,使用这样的变量:

SELECT 
t.*,
@i:=IF(id=@id, @i+1, 1) AS num,
@id:=id
FROM
t
CROSS JOIN (SELECT @i:=0, @id:=0) AS init
ORDER BY id

关于mysql - 列中每个重复项的递增计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22912036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com