考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

(复合题)student 表中有 4 个字段:StudentID(学生编号)、Class(班级)、CourseID(课程编号)、Score(分数)。 (1)student 表中记录了同学每一次考试的成绩。那么以下哪组 SQL 代码取数的结果中,StudentID 字段取值不会出现重复?
A. select StudentID,max(score) from student group by StudentID;
B. select distinct StudentID,Score from student;
C. select StudentID from student;
D. select StudentID from student where studentID is not null;
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

A 选项按 StudentID 字段分组后的结果中 StudentID 字段不会出现重复值。

在给定的 SQL 代码选项中,要求取数的结果中 `StudentID` 字段取值不会出现重复。我们可以逐一分析每个选项的 SQL 代码:

A: `select StudentID, max(score) from student group by StudentID;`
- 这条 SQL 语句会按 `StudentID` 分组,并且每个 `StudentID` 只会出现一次,因为 `group by` 子句保证了每个 `StudentID` 的唯一性。因此,这条语句的结果中 `StudentID` 字段取值不会出现重复。

B: `select distinct StudentID, Score from student;`
- 这条 SQL 语句会去除重复的行,但 `StudentID` 字段仍然可能会出现重复的取值,因为不同的 `Score` 值对应的 `StudentID` 可能是相同的。因此,这条语句的结果中 `StudentID` 字段取值可能会出现重复。

C: `select StudentID from student;`
- 这条 SQL 语句会返回 `student` 表中所有记录的 `StudentID` 字段值,不做任何去重处理。因此,这条语句的结果中 `StudentID` 字段取值可能会出现重复。

D: `select StudentID from student where studentID is not null;`
- 这条 SQL 语句会返回 `student` 表中所有 `StudentID` 字段不为 NULL 的记录,同样不做任何去重处理。因此,这条语句的结果中 `StudentID` 字段取值可能会出现重复。

通过以上分析,可以确定选项 A 是唯一符合题意的选项,即选项 A 取数的结果中 `StudentID` 字段取值不会出现重复。

**正确答案:A**