0


这么简单的数据库面试题,第一眼竟无从下手。。

🔎这里是MYSQL数据库加油站
👍如果对你有帮助,给博主一个免费的点赞以示鼓励
欢迎各位🔎点赞👍评论收藏⭐️

前段时间朋友发给我一个数据库面试题,第一眼竟不知从何下手!

下面一起来看一看这个题吧!

学生成绩表
在这里插入图片描述

问题一:一条sql语句查询出成绩排第三的学生信息

分析: 想要查出成绩排行第三的学生信息,要进行三次查询。

  • 首先要将成绩进行排序,查询出排序后的成绩和排名。
  • 然后在第一次查询出的结果中查询出排名第三的成绩。
  • 最后根据学生成绩在student表中查询出学生信息
-- 第三次查询SELECT id,name,score FROM student WHERE score=(-- 第二次查询select score FROM(-- 第一次查询select score,concat(RANK()over(ORDERBY score desc))acb FROM student
)ace WHERE acb=3)

在这里插入图片描述

问题二:查询学生信息和成绩评价,成绩>=80为优秀,成绩>=60为及格,成绩<60为不及格。

分析:在学生信息后面多显示一个字段为成绩评价,if判断成绩。

select id,name,score,if(80<=score,'优秀',if(60<=score,'及格','不及格'))评价 from student

在这里插入图片描述

问题三:以优秀,及格,不及格分组并统计每组的个数

分析:直接在问题二的表上进行分组统计

select le 评价,count(*) 人数 from(select id,name,score,if(80<=score,'优秀',if(60<=score,'及格','不及格'))le from student)as t groupby t.le;
标签: 数据库 database

本文转载自: https://blog.csdn.net/weixin_50843918/article/details/123014520
版权归原作者 桃花键神 所有, 如有侵权,请联系我们删除。

“这么简单的数据库面试题,第一眼竟无从下手。。”的评论:

还没有评论