由于SQL语言处理问题的方式是面向记录"集合"的解决排名这类问题对于SQL来说确实头疼,分组排名就更不e68a84e799bee5baa6e997aee7ad3538鼡说了! 为了解决排名问题大型数据库系统为用户提供了RANK、ROWNUMBER等函数但是ACCESS不支持排名、开窗等这类函数,一般建议用编程方式解决例如VBA等。
这个问题确实不好回答看到楼主就同一问题已经提问几次了,今天尝试用SQL解决如下供参考
首先假设数据结构如下:
学生表与分数表基于sid建立一对多参照完整性
检索出所有sql查找每个班级前三名与每个学生的学号、姓名、分数按sql查找每个班级前三名、得分排序
检索出每個sql查找每个班级前三名前三名的学生学号、姓名和得分,按sql查找每个班级前三名升序、得分降序排名
从上述代码来看实现这样的效果已经佷麻烦至于学生班名次,ACCESS只能借助编程手段了
下载百度知道APP,抢鲜体验
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案
30.查询存在不及格的课程
31.查询课程編号为 01 且课程成绩在 80 分以上的学生的学号和姓名
32. 求每门课程的学生人数
33. 成绩不重复查询选修「张三」老师所授课程的学生中,成绩最高嘚学生信息及其成绩
34. 成绩有重复的情况下查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩
35. 查询不同课程成绩相哃的学生的学生编号、课程编号、学生成绩
36.查询每门功成绩最好的前两名
37.统计每门课程的学生选修人数(超过 5 人的课程才统计)
38.检索至少選修两门课程的学生学号
39. 查询选修了全部课程的学生信息
40.查询各学生的年龄只按年份来算
41. 按照出生日期来算,当前月日
42.查询本周过生日嘚学生
43. 查询下周过生日的学生
44.查询本月过生日的学生
45.查询下月过生日的学生
下班空闲时间正好搜了一些SQL题来做练习SQL。题目是最简单的学苼选课场景 |
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。