如何查询出同课程、同成绩的学生的学号、课程编号和成绩?
为了解决这个问题,我们可以使用 mysql 中的 group by 和 having 子句。
.group by 子句用于将表中的数据分组。它将相同值的行分组到一起,并为每个组创建一个新的行。在本例中,我们可以按 cid(课程编号)和 score(成绩)对 sc` 表进行分组。
.having 子句用于对分组后的数据进行筛选。它将基于分组结果对数据进行限制。在本例中,我们可以使用 having` 筛选出现次数大于 1 的组。
以下是查询的完整代码:
select group_concat(sid order by sid) sids, cid, score from sc group by cid, score having count(1) > 1;
登录后复制
该查询将返回以下结果:
sids | cid | score |
---|---|---|
01,03 | 01 | 80.0 |
02,03 | 03 | 80.0 |
这与期望的结果是一致的,展示了不同课程成绩相同的学生的学生编号、课程编号和学生成绩。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
【小浪云服务商 - 服务器12元起 - 挂机宝5元起】
THE END
暂无评论内容