SQL问题(面试题)
面试完后在本地mysql数据库中重现了该问题
数据表stuscore信息如下:

1、计算每个人的总成绩,并且排名(要求显示字段 学号 姓名 总成绩)
SELECT stuid AS 学号,NAME AS 姓名, SUM(score) AS 总成绩
FROM stuscore GROUP BY stuid ORDER BY 总成绩 DESC
2、计算每个人单科的最高成绩(要求显示字段 学号、姓名、课程、最高成绩)
select stuid AS 学号,NAME AS 姓名,SUBJECT AS 课程,score AS 最高成绩
from stuscore a where score=(select max(score) from stuscore where subject=a.subject)
3、统计如下:课程 不及格(0-59)个 良(60-80)个 优(81-100)个
SELECT subject AS 课程,count(CASE WHEN SCORE<60 then 1 END) AS "不及格(0-59)个",
count(CASE WHEN SCORE BETWEEN 60 AND 80 then 1 END) AS "良(81-100)个",
count(CASE WHEN SCORE BETWEEN 81 AND 100 then 1 END) AS "优(81-100)个"
FROM stuscore GROUP BY `subject`
4、统计如下:课程 张三分数 李四分数 王五分数
SELECT subject AS 课程,SUM(CASE WHEN `name` = "张三" then score ELSE 0 END) AS "张三分数",
SUM(CASE WHEN `name` = "李四" then score END) AS "李四分数",
SUM(CASE WHEN `name` = "王五" then score END) AS "王五分数"
FROM stuscore GROUP BY `subject`
SQL问题(面试题)的更多相关文章
- SQL经典面试题及答案
1.一道SQL语句面试题,关于group by表内容:2005-05-09 胜2005-05-09 胜2005-05-09 负2005-05-09 负2005-05-10 胜2005-05-10 负2 ...
- Sql Server 面试题
1.用一条SQL语句 查询出每门课都大于80分的学生姓名 name kecheng fenshu 张三 语文 81张三 数学 75李四 语文 ...
- SQL数据库面试题
SQL数据库面试题 1.SQL SREVER中,向一个表中插入了新数据,如何快捷的得到自增量字段的当前值 这种情况其实我们经常用到,比如我们新建了一个用户,建立完用户后我们希望马上得到这个新用户的ID ...
- sql 经典面试题及答案(选课表)
SQL数据库面试题以及答案 Student(Sno,Sname,Sage,Ssex) 学生表 Sno:学号:Sname:学生姓名:Sage:学生年龄:Ssex:学生性别Course(Cno ...
- Oracle 之 SQL 面试题 录
多上网查查 SQL 面试题 1.学号(自动编号) 姓名 性别 年龄 0001 xw 男 18 0002 mc 女 16 0003 ww 男 21 0004 xw 男 18 请写出实现如下 ...
- 一道SQL的面试题之联想
一道SQL的面试题之联想 本人工作在一家小型的民营企业,主要从事业务系统的日常维护,二次开发,菜鸟一枚.周五经理准备面试两个开发人员,据简历,都还比较不错,让经理产生了想法,于是准备了一套面试题目,给 ...
- SQL + Python 面试题:之二(难度:中等)
SQL + Python 面试题:之二(难度:中等)
- 【转】SQL语句面试题
1.一道SQL语句面试题,关于group by表内容:2005-05-09 胜2005-05-09 胜2005-05-09 负2005-05-09 负2005-05-10 胜2005-05-10 负2 ...
- 最强最全面的大数据SQL经典面试题(由31位大佬共同协作完成)
本套SQL题的答案是由许多小伙伴共同贡献的,1+1的力量是远远大于2的,有不少题目都采用了非常巧妙的解法,也有不少题目有多种解法.本套大数据SQL题不仅题目丰富多样,答案更是精彩绝伦! 注:以下参考答 ...
- Sql 常见面试题
SQL面试题(1) create table testtable1(id int IDENTITY,department varchar(12) ) select * from testtable1i ...
随机推荐
- day06--元组、字典、集合与关系运算
今日内容: 1.元组 2.字典 3.集合与关系运算 元组: 用途:记录多个值,当多个值没有改的需求,此时用元组更适合. 定义方式:在()内用逗号分隔开多个任意类型的值. 变量名=tuple('') 切 ...
- EF(EF Core)中的NotMappedAttribute(转载)
NotMapped特性可以应用到EF实体类的属性中,Code-First默认的约定,是为所有带有get,和set属性选择器的属性创建数据列..NotManpped特性打破了这个约定,你可以使用NotM ...
- net 表格控件
一个开源的表格控件,界面像Excel,看来很好,有机会在项目中使用:ReoGrid https://reogrid.net/
- android so壳入口浅析
本文转自http://www.9hao.info/pages/2014/08/android-soke-ru-kou-q 前言 开年来开始接触一些加固样本,基本都对了so进行了处理,拖入ida一看 ...
- 2017-2018-2 20155230《网络对抗技术》实验1:PC平台逆向破解(5)M
1.直接修改程序机器指令,改变程序执行流程 2.通过构造输入参数,造成BOF攻击,改变程序执行流 3.注入Shellcode并执行 4.实验感想 注:因为截图是全屏所以右键图片在新的标签页打开观看更加 ...
- Data Consistency Primer
云应用通常来说,使用的数据很多都是分散的,来自不同的数据仓库.在这种环境下,管理和保持数据一致性是很复杂的,无论是在并发跟可用性上都可能出问题.开发者有的时候就需要为了强一致性而牺牲可用性了.这也就意 ...
- sprintboot 和swagger2整合生成文档
1.创建springboot 工程 2.引入maven依赖 <dependency> <groupId>io.springfox</groupId> <art ...
- S5PV210 DDR2初始化 28个步骤总结
看了一套视频,感觉DDR这个部分将的非常细致也很好,于是把视频内容花了一个多星期作了总结. 这个视频就是不知道是谁讲的,做好事不留名啊---那位知道告诉我哈-- 平台:S5PV210 DDR: 兼容 ...
- springboot打包成war后部署项目出现异常 LifecycleException: Failed to start component
完整异常:org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].Sta ...
- JavaScript 变量提升
变量提升(Hoisting):在ES6之前,函数声明和变量声明总是被JavaScript解释器隐式地提升(hoist)到包含他们的作用域的最顶端. 注意: 1. JavaScript 仅提升声明,而不 ...