SQL进阶题

1.题目要求
productid(产品id)saleamount(销量)yearmonth(年月)题目要求∶
1)19年各月销量默认为0,同期增长值-当月销量-去年当月销量,同比=同期增长值/去年当月销量,查询结果输出年月、当月销量、同期增长值、同比,结果按年月顺序排序
2)19年各月销量默认为0,环比=(当月销量-前一月销量)/前一月销量,查询结果输出年月、当月销量、环比,结果按年月顺序排序

2.题目要求
tname(姓名)、fr_grade(FR得分)、sql_grade(SQL得分)、tomcat_grade(TOMCAT得分)、kettle_grade(kettle得分)、inserttime(考核时间)
其中KETTLE不是必考项是加分项,考核通过的要求是∶FR、SQL、TOMCAT三个模块得分均超过60分同时四个模块总分超过240 题目要求∶
1)查询结果输出人员姓名、考核次数、考核通过次数、考核通过率2)查询多次考核总分的平均分>=250的人员姓名、考核平均分
3)若通过一次考核则视为人员考核通过,若考核通过则输出考核通过中总分最高的记录,若考核未通过则输出考核未通过中总分最高的记录,结果输出∶人员姓名、考核结果、FR得分、SQL得分、TOMCAT得分、kettle得分、考核时间(参考结果说明)

4)考核通过优于考核未通过,总分高的优于总分低的,已知张三考了多次,查询他每次考核较上次考核是进步还是退步,结果输出考核日期、进退步情况

3.
数据来源∶ 参考题目所用表格&文件自建,表名,字段名可自定义,数据内容请勿自行修改
1)查询2020年8月份每个客户每个产品的销售数量总和并根据销售数量总和降序排序,结果输出年份月份 客户ID 产品ID销售数量
2)查询每个产品2020年9月份在法国的销售金额总和,结果输出产品ID产品名称销售金额3)查询所有时间内,排名前3名的客户销售金额总和,结果输出排名客户名称销售金额
4)查询所有时间内,销售金额占比大于等于10%的产品,并按占比大小降序排序,结果输出产品名称销售金额占比

5)查询所有时间内,所有产品销售金额占比,按占比大小降序排序,筛选累计占比在前80%的产品,结果输出排名产品名称销售金额占比累计占比
6)查询所有时间内,各个国家的销售情况,销售合计金额大于10000视为业绩合格,否则为不合格,结果输出国家销售金额业绩情况

7)查询中国、英国每个月份的销售情况,2020年8月份销售合计金额大于10000视为业绩合格,否则为不合格,2 020年9月份销售合计金额大于12000视为业绩合格,否则为不合格,结果输出 月份 中国销售业绩 英国销售业绩

4.
数据来源∶参考题目所用表格&文件自建,说明所用数据库(限定使用MYSQL/ORACLE/SQLSERV,表名,字段名可自定义,数据内容请勿自行修改成绩80及以上为A
7079为B 6069为C 60以下为D
查询所有人两个科目的等级,结果要求如图所示,请写出查询语句

5.数据来源∶ 题目所需文件 TYEAR(年份) TYEAR)F份) TAMOUNT(销量) 表中列举了2019年1月份到的每个月销量数据,无数据表示当月销量为0。 题目要求;
1、查询表中各年月销量与上月销量的差值,按年、月顺序排序,结果输出 年、月、销量、与上月销量的差值 环比
2、查询表中各年月销量与上一个临近月销量的差值,按年、月顺序排序,结果输出 年、月、销量、与上一个临近月销量的差值的环比

6.数据来源∶参考题目所用表格&文件自建,说明所用数据库(限定使用MYSQL/ORACLE/SQLSERVER),表名,字段名可自定义,数据内容请勿自行修改
考试通过的定义∶模块1考试成绩>=60且模块2考试成绩>=60
每个人有多次考试记录,有一次考试通过则视为考试通过,若全都未通过则结果为未通过,无论为哪种情况,都输出模块1成绩+模块2成绩最高的记录
查询所有成员最终的考核结果,结果如模板要求所示,请写出查询语句

7.数据来源题目所需文件TNAME(水果名称)PRICE(价格)题目要求∶
1)查询价格从高到低的顺序,结果输出如图1所示
2)假设小明有100元,需要购买两种水果,利用SQL查询有几种购买方案

8.数据来源∶参考题目所用表格&文件自建,说明所用数据库(限定使用MYSQL/ORACLE/SQLSERVER),表名,字段名可自定义,数据内容请勿自行修改
1)查询Class1班级英语平均分与Class2中英语平均分的差值
2)查询各班级法语成绩中低于班级法语平均分的人员个数

9.题目要求
数据来源题目所需文件
TDATE(日期)TNAME(水果名称)SALEAMOUNT(销量)题目要求∶
1)查询语句,结果按梨、葡萄、西瓜、橘子、柠檬、苹果、香蕉的顺序排序,同种水果按销量降序排序,结果参考说明

2)查询每天的合计销量,以及当天销量占总销量的比例,结果输出日期、销量、占比

10.题目所需文件CARD_ID (身份证)、 TNAME(姓名)、SCORESI分数、OPEN_ID(设备ID)、NSERTTIME(提交成绩时间) 题目要求 :
分数>=60分视为考试通过,有一次通过即为考核通过 OPEN_ID重复的两个人视为一个人替另外一个人代考,设定第一次在某设备上提交成绩的人员为A,后续在该设备提交的成绩均为A帮助其他人员代考,成绩应为A的成绩,查询有哪几个人员帮助他人代考,这些人员的考核最高分是多少结果列输出姓名、考核最高分得分点

11.数据来源:根据题目所用表格导入自建,说明所用数据库(限定使用MYSQL/ORACLE/SQLSERVER)
1)查询姓名重复三次的人员ID,结果以人员ID降序排序
2)查询去掉最大年龄,最小年龄后人员的平均年龄(要求使用 NOT EXISTS)

12.根据余额拉链历史表acct 如下图所示。用一个SQL计算每个账户2020/1/1,2020/3/31]期间的利息? 公式:sum(balratedays/360)

作者:严锋  创建时间:2023-11-03 09:54
最后编辑:严锋  更新时间:2023-11-03 09:57