编写一个 sql 查询以获取具有多个值的记录

write a sql Query to fetch records with multiple values

我有一张 table,上面有卷号、名字。但是对于一些卷号,有不同名称的记录

table,卷号2和6有多条卷号相同但名称不同的记录

我需要写一个query/cursor从上面的table学生那里获取这样的记录。

例如:Table - 学生

|Roll No.| Name |
| -------| -----|
| 1      | A    |
| 1      | A    |
| 2      | B    |
| 2      | C    |
| 2      | D    |
| 3      | E    |
| 3      | E    |
| 4      | F    |
| 5      | G    |
| 6      | H    |
| 6      | I    |

预期的输出应该是 2, 6(Roll numbers have multiple records but with different names)

数字 1、3 不应该在预期结果中,因为它们在所有记录中具有相同的名称

在MySQL你可以做下一个查询:

select roll_no
from Student
group by roll_no
having count(distinct name) > 1;

MySQL group by

结果:

+=========+
| roll_no |
+=========+
| 2       |
+---------+
| 6       |
+---------+