我的表结构
id name
1 bhagi
1 user
1 amit
1 sumit
2 bhagi
2 chinmay
2 sumit
3 rashmi
3 RBS
4 sumit
4 amit
4 bhagi
4 rashmi
4 RBS
我要结果
id name result
1 bhagi 1/4(position of bhagi for id 1(1) / no of time that id is present(4))
1 user 2/4
1 amit 3/4
2 bhagi 1/3
2 chinmay 2/3
3 rashmi 1/2
4 sumit 1/5
4 amit 2/5
4 bhagi 3/5
4 rashmi 4/5
我的要求是获取结果列
示例:对于 ID 1
现在有 4 个 id bhagi、user、amit 和 sumit
对于 bhagi,结果将是 1/4(因为 bhagi 在 db 中的位置是 1,并且存在的 id 1 的编号是 4)对于其他人来说类似
当结果为 1 时我想忽略。
我试过但不知道要计算分母部分。表示 id 出现的次数。
[编辑]
我努力了
select id,
name,
IF(@LAST=(@LAST:=id), @CURROW := @CURROW + 1, @CURROW:=1) AS ROW_NUMBER
FROM FEEDBACK_STORE
JOIN (SELECT @CURROW := 0, @LAST:=0) R
它的给出结果
id name row_number
1 bhagi 1
1 user 2
1 amit 3
1 sumit 4
2 bhagi 1
2 chinmay 2
2 sumit 3
3 rashmi 1
3 RBS 2
4 sumit 1
4 amit 2
4 bhagi 3
4 rashmi 4
4 RBS 5
我只需要分母部分的 id 例如:对于 id 1-4 ,对于 id 2-3,对于 id 3-2,对于 id 4-5
[/编辑]
请帮忙
提前致谢