选择distinct不按预期工作

sri*_*ram 4 sql oracle

学生组表:

STDNT_GROUP

studentId,CollegeID,studentgroup,flag
1,007,panthers,y
2,003,owls,n
3,007,owls,y
1,007,texans,y
2,003,texans,n
Run Code Online (Sandbox Code Playgroud)

预期产出

1,007
2,003
3,007
Run Code Online (Sandbox Code Playgroud)

我想要独特的学生ID以及他们各自的大学生.

我试过这个查询:

select distinct(studentId),collegeID from;
Run Code Online (Sandbox Code Playgroud)

select studentId,collegeID from STDNT_GROUP where studentId in(select distinct(studentId) from STDNT_GROUP)";
Run Code Online (Sandbox Code Playgroud)

Mic*_*ski 7

DISTINCT没有括号使用应该得到你想要的. DISTINCT应该被认为是一个子句,而不是一个将列名称作为参数传递给的函数.它返回查询返回的超集上的不同集,而不是单个列中的不同值.

SELECT DISTINCT
  studentId,
  CollegeID
FROM STUDENT_GROUP
Run Code Online (Sandbox Code Playgroud)