我有一张如下表
studentID Subject
1 Sub1
2 Sub1
3 Sub1
4 Sub1
1 Sub2
2 Sub2
4 Sub2
1 Sub3
3 Sub3
4 Sub3
我需要对具有相同主题集的学生进行分组。只需为具有相同主题集的学生提供一个唯一的组 ID。
所以这里的学生 id (1) 和 (4) 会说 group id = 1
学生 id 2 - 组 id = 2(没有其他人只有 sub 1 和 sub 2)
学生 ID 3 - 组 ID = 3
结果应该像
studentid groupid
1 1
4 1
2 2
3 3
我编写了一个 sqlquery,它使用 FORXML 将学生的所有科目分组到单个列,然后在该列上使用 group by,然后将排名与它们相关联。有一个更好的方法吗