小编dau*_*aud的帖子

MySQL 5.6 - DENSE_RANK 类似功能,没有 Order By

我有一张这样的表:

+------+-----------+
|caseID|groupVarian|
+------+-----------+
|1     |A,B,C,D,E  |
+------+-----------+
|2     |A,B,N,O,P  |
+------+-----------+
|3     |A,B,N,O,P  |
+------+-----------+
|4     |A,B,C,D,F  |
+------+-----------+
|5     |A,B,C,D,E  |
+------+-----------+
Run Code Online (Sandbox Code Playgroud)

我想获得一个新列nameVarian,以便相同的groupVarian值具有相同的排名nameVarian(例如:v1、v2 等)。但是,nameVarian分配给特定对象的值groupVarian应按照 的顺序caseID(按照它们出现在表中的顺序)。

输出应该是这样的:

+------+-----------+----------+
|caseID|groupVarian|namevarian
+------+-----------+----------+
|1     |A,B,C,D,E  |v1        |
+------+-----------+----------+
|2     |A,B,N,O,P  |v2        |
+------+-----------+----------+
|3     |A,B,N,O,P  |v2        |
+------+-----------+----------+
|4     |A,B,C,D,F  |v3        |
+------+-----------+----------+
|5     |A,B,C,D,E  |v1        |
+------+-----------+----------+
Run Code Online (Sandbox Code Playgroud)

mysql sql mysql-5.6

4
推荐指数
1
解决办法
3783
查看次数

标签 统计

mysql ×1

mysql-5.6 ×1

sql ×1