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

备考刷题,请到

CDA认证小程序

student表中记录了同学每一次考试的成绩。那么以下哪组sql代码取数的结果中,id字段取值不会出现重复( )(多选)
A. select id, max(score) from student group by id
B. select distinct id from student
C. select id from student
D. select id from student where id is not null
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

选项A代码以id的值作为分组依据,统计每组score的最大值,因此最终取数结果中id的取值不会重复。distinct是去重函数。

要判断哪组 SQL 代码的结果中 `id` 字段取值不会出现重复,我们需要分析每个查询语句的逻辑。

A: `select id, max(score) from student group by id`
- 这个查询使用了 `GROUP BY id`,这意味着结果集会根据 `id` 进行分组,每个 `id` 只会出现一次。因此,`id` 字段取值不会出现重复。

B: `select distinct id from student`
- `DISTINCT` 关键字用于去除重复值,因此结果集中每个 `id` 也只会出现一次。

C: `select id from student`
- 这个查询直接从表中选择 `id` 字段,不进行任何去重操作。如果表中有重复的 `id`,那么结果集中也会有重复的 `id`。

D: `select id from student where id is not null`
- 虽然这个查询过滤掉了 `NULL` 值的 `id`,但没有去重操作。如果表中有重复的非空 `id`,结果集中仍然会有重复的 `id`。

综上所述,正确答案是 A 和 B。