推广 热搜: 行业  机械  设备    经纪  教师  参数  系统    蒸汽 

PTA-数据库作业题(二)

   日期:2024-11-11     移动:http://mip.xhstdz.com/quote/74774.html

所有的题目都是课后作业题,仅供学习参考使用

PTA-数据库作业题(二)


刚做完的自学作业,这一部分涉及有视图以及查询,针对PTA通过问题也会提到一些。

一、题目

10-1 查询xscj表中的学号,姓名,计算机三项信息,结果按计算机成绩的降序排列。
 
 稍微提一下,order by 默认升序,desc表示降序排列,asc表示升序排列,查找时按照在其后的优先级进行查找。  
10-2 查询图书表中各出版社图书的数目,结果按图书数目降序排序
 
10-3 查询图书的条形码,书名,出版社和出版日期,要求结果按出版社升序排列,出版社相同的数据按出版日期降序排列
 
10-4 查询选修了“0000008”课程的学生的学号及其成绩,查询结果按分数降序排列
 
10-5 查询成绩不及格的学生学号、课号和成绩,并按成绩降序排列
 
10-6 查询信息学院的男生信息,查询结果按出生日期升序排序,出生日期相同的按生源地降序排序
 
10-7 检索出被学生选修的课程编号,结果按着课程编号降序排列
 
10-8 查询商品表,先按商品分类升序排列,再按商品价格降序排列
 
10-9 统计每个学院的学生总人数,并按人数降序排列
 
 当聚合函数和非聚合函数同时使用的时候,需要使用 group by,其后跟非聚合函数即可,否则无意义  
10-10 查询课程“Dp010004”的学生学号和成绩,并按成绩降序排列,成绩相同按学号升序排列
 
10-11 查询zgda表中的工号,姓名,性别,职称4项信息,显示结果时首先按照女性在前的顺序,如果性别相同则按照职称的升序排列。
 
10-12 查询图书表中的图书的条形码和书名,要求结果按条形码升序排序
 
10-13 在读者表中查询全部读者信息,要求女性在前男性在后,同为女性读者的按账号升序排列
 
10-14 在员工表中查询所有男性员工的编号,姓名和入职日期,结果按员工编号升序排列
 
10-15 在顾客表中查询青岛的顾客编号,公司名称和电话,结果按顾客编号升序排列
 
10-16 检索所有选修了40008课的学生学号和成绩,查询结果按学号升序排列
 
10-17 查看2010年的销售记录,查询结果以销售日期升序排列
 
 year 函数可以直接使用,之前的作业题里有显示如何表示时间  
10-18 查询马齐的购物情况,查询结果以商品编号升序排列
 
 这道题真的很磨人,上面是 PTA通过的答案,下面是我自己练习是时候写的  
 
 我写的这部分,PTA报错显示的是“运行时错误”,经过对比后可以看到其实不需要使用聚合函数,直接select recorder.quantity 就行  
10-19 查看1998年出生的学生信息,查询结果以学号升序排列。
 
10-20 统计每个学生的选课门数和考试总成绩,并按选课门数升序排列
 
10-21 统计各系的老师人数,并按人数升序排序
 
10-22 查询所有教师信息,按教师编号升序排列
 
10-23 创建视图,包含商品打折前后的价格信息
 
 SQL CREATE VIEW 语法 CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERe condition  
10-24 创建视图,包含拥有属性值个数大于1的商品信息
 
 先创建视图,再根据要求select  
10-25 创建一个有关男会员信息的视图customer_male,字段名分别是会员编号,会员姓名,性别,电话。
 
10-26 创建一个每种货物的销售数量的视图good_total,要求是在2010年04月01日到2010年7月31日之间销售的货品,字段包括(gid,total
 
 1、这部分时间用的是between... and... 因为题目显示的是timestamp格式,即YYYY-MM-DD HH:II:SS这个格式,如2010-04-01 00:00:00这种格式的SQL语句。这样我们就要用到两种方法,一种就是我上面写的答案“between and”;另一种就是 sale_date >='2010-04-01 00:00:00' and sale_date <= '2010-07-31 00:00:00' 但我在PTA上用第二种时显示内部错误,所以就用了第一种。这个我也不清楚是什么原因,有知道的大佬可以了评论告诉我  这道题一开始我写的是 count(quantity),但是PTA运行结果显示“答案错误”,后来查了下发现sum()函数和count()函数的区别在于sum(*)对符合条件的记录的数值列求和;count(*)对符合条件的结果个数(或者记录)求和。 SUMMARY 1)求和用累加sum(),求行的个数用累计count() 2)数据库中对空值的处理:sum()不计算,count()认为没有此项 

本文地址:http://sjzytwl.xhstdz.com/quote/74774.html    物流园资讯网 http://sjzytwl.xhstdz.com/ , 查看更多

特别提示:本信息由相关企业自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


0相关评论
相关行业动态
推荐行业动态
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号