版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、二、语句题 1、Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno”
2、cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩 。 针对以上各表,用SQL语句完成以下操作。 统计每个系VB课程的考试情况,列出系名和考试情况,其中考试情况为: 如果VB平均成绩大于等于90,则考试情况为“好”; 如果VB平均成绩在8089分,则考试情况为“良好”; 如果VB平均成绩在7079分,则考试情况为“一般”; 如果VB平均成绩低于70分,则考试情况为“较差”。Select sdept系名Case When AVG(grade)>=90 then 好 When AVG(grade) between 80 and 89 then良好
3、 When AVG(grade) between70 and 79 then一般 When AVG(grade)<70 then较差END AS 考试情况From student s join sc on s.sno=sc.snoWhere cname=VB2、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所
4、在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩。 针对以上各表,用SQL语句完成以下操作。 查询哪些课程没有人选,要求列出课程号和课程名。(请用子查询实现)Select cno,cname from c
5、ourse Where cno not in(select cno from sc)3、已知商品表、订单表、订单细节表、顾客表的结构如下所示: 商品 字段名称 数据类型 长度 备注 商品编号 char 5 主键 商品名称 varchar 50 单价 numeric(10,2) 库存数量 int 取值大于等于0 顾客 字段名称 数据类型 长度 备注 顾客编号 char 5 主键 顾客姓名 varchar 50 订单 字段名称 数据类型 长度 备注 订单编号 char 10 主键 下单日期 date 顾客编号 char 5 引用顾客表的外键 订单细节 字段名称 数据类型 长度 备注 订单编号 ch
6、ar 10 主键,引用订单表的外键 商品编号 char 5 主键,引用商品表的外键 数量 int 默认值为1 针对以上各表,用SQL语句完成以下操作。 查询每种商品的订单数量,包括没有订单的商品。列出:商品编号和订单数量。Select 商品.商品编号,count(distinct 订单编号)as订单数量 from 商品 left outer join 订单细节 on 商品.商品编号=订单细节.商品编号Group by 商品.商品编号4、已知“图书”表的结构如下: 列名 数据类型 长度 备注 书号 char 5 主键 书名 varchar 50 价格 numeric(10,2) 写出实现下列查询
7、要求的SQL语句。 查询所有书籍信息,列出:书号、书名、价格和等级。其中“等级”根据价格决定:对价格小于等于20元的等级显示为“很便宜”,对价格小于等于50元且大于20元的等级显示为“中等”,对价格大于50元等级显示为:“很贵”。Select 书号,书名,价格Case When 价格<=20 then很便宜 When 价格 between 20 and 50 then中等 When 价格>50 then很贵END AS 等级From 图书5、此应用场景中主要包含以下几个关系: 1:影片专题信息(TSubject )关系,主要包括专题编号(SubjectID)、专题名称(S
8、ubjectName)、备注(SubjectMemo);2:影片基本信息(TVideo)关系,主要包括影片编号(VideoID)、影片名称(VideoName)、导演(VideoDirector)、上映时间(VideoTime)、主演(VideoActor)、影片海报(VideoPoster)、影片描述(VideoDesc)、集数(VideoEpisode )、价格(VideoPrice)、影片状态(VideoState)、备注(VideoMemo)、专题编号(SubjectID); 3:影片剧情基本信息(TVideoEpisode)关系,主要包括剧情编号(EpisodeID)、剧情
9、集数(EpisodeNum)、播放地址(EpisodeURL)、备注(EpisodeMemo);、影片编号(VideoID); 根据上述做给关系,写出统计各专题的影片数量的查询语句,不包括影片数量少于5部(包括5部)的影片。(表名、列名均用给出的英文)Select SubjectID count(*)as影片数量 from TSubject join TVideo on TSubject.SubjectID=TVideo.SubjectIDGroup by SubjectIDHaving count(*)>=56、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表
10、,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sn
11、o” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩。 针对以上各表,用SQL语句完成以下操作。 删除计算机系VB成绩不及格学生的VB选课记录。Delete from scWhere sno in(select sno from student where=计算机系)and cno in(select cno from course where cname=VB)and grade<607、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注
12、 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno”
13、 grade int 成绩。 针对以上各表,用SQL语句完成以下操作。 查询计算机系年龄最大的三个学生的姓名和年龄(包括并列情况)。Select top 3 with ties sname, sage from studentWhere sdept=计算机系Order by sage desc8、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sde
14、pt varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩。 针对以上各表,用SQL语句完成以下操作。 删除信息管理系成绩小于50分的学生的修课纪录。(请用子查询实现)Delete f
15、rom scWhere sno in(select sno from student where sdept=信息管理系)And grade<509、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cnam
16、e varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩 。 针对以上各表,用SQL语句完成以下操作。 查询计算机系哪些学生没有选课,列出学生姓名。(请用外连接实现)Select sname fromStudent s left outer join sc on s.sno=sc.snoWhere sdept=计算机系 a
17、nd sc.sno is null10、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选
18、课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩。 针对以上各表,用SQL语句完成以下操作。 以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系
19、Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩 针对以上各表,用SQL语句完成以下操作。 查询计算机系每个学生的VB考试情况,列出学号、姓名、VB成绩和成绩情况,其中成绩情况的显示规则为: 如果成绩大于等于9
20、0,则成绩情况为“好”; 如果成绩在8089,则成绩情况为“较好”; 如果成绩在7079,则成绩情况为“一般”; 如果成绩在6069,则成绩情况为“较差”; 如果成绩小于60,则成绩情况为“差”。,列出学号、姓名、VB成绩和成绩情况,其中成绩情况的显示规则为: 如果成绩大于等于90,则成绩情况为“好”; 如果成绩在8089,则成绩情况为“较好”; 如果成绩在7079,则成绩情况为“一般”; 如果成绩在6069,则成绩情况为“较差”; 如果成绩小于60,则成绩情况为“差”。Select sno,sname,gradeCaseWhen grade>90 then好When grade bet
21、ween 80 and 89 then较好When grade between70 and 70 then一般When grade between 60 and 69 then较差When grade<60 then差END AS 考试情况From student s join sc on s.sno=sc.snoJoin course c join sc on o=oWhere sdept=计算机系and cname=VBGroup by sno11、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类
22、型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Cours
23、e的“Cno” grade int 成绩 。 针对以上各表,用SQL语句完成以下操作。 查询VB考试成绩最低的学生的姓名、所在系和VB成绩。Select top 1 with ties sname,sdept,grade fromStudent s join sc on s.sno=sc.snoJoin course c join sc on o=oWhere cname=VBOrder by grade desc12、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char
24、10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩
25、 。 针对以上各表,用SQL语句完成以下操作。 查询选课门数最多的前2位学生,列出学号和选课门数。Select top 2 sno,count(*)选课门数From scGroup by snoOrder by count(*) desc13、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程
26、表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩 。 针对以上各表,用SQL语句完成以下操作。 统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。Select sno,count(*)选课门数,sum(grade总成
27、绩 from sc Group by snoOrder by count(*) ase14、以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 取值为“男”或“女” 出生日期 datetime 课程 字段名称 数据类型 长度 备注 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键,引用学生表的外键 课号 char 4 主键,引用课程表的外键 成绩 int 取值范围为
28、:0100 针对以上各表,用SQL语句完成以下操作。 查询选修了“数据库”课程的学生信息,列出学号和姓名。(使用子查询实现)Select 学号,姓名 from 学生Where 学号 in(select 学号 from 选课 where 课号in(select 课号 from 课程 where 课程名=数据库)15、以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 取值为“男”或“女” 出生日期 datetime 课程 字段名称 数据类型 长度 备注
29、课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键,引用学生表的外键 课号 char 4 主键,引用课程表的外键 成绩 int 取值范围为:0100 针对以上各表,用SQL语句完成以下操作。 查询每门课的选课人数,显示课号及选课人数。(包括没有人选的课程)Select 课程.课号,count(学号)as 选课人数From 课程 left outer join 选课 on 课程.课号=选课.课号Group by 课程.课号16、已知商品表、订单表、订单细节表、顾客表的结构如下所示: 商品 字段名称 数据类型 长
30、度 备注 商品编号 char 5 主键 商品名称 varchar 50 单价 numeric(10,2) 库存数量 int 取值大于等于0 顾客 字段名称 数据类型 长度 备注 顾客编号 char 5 主键 顾客姓名 varchar 50 订单 字段名称 数据类型 长度 备注 订单编号 char 10 主键 下单日期 date 顾客编号 char 5 外键,引用顾客表的顾客编号 订单细节 字段名称 数据类型 长度 备注 订单编号 char 10 主键。外键,引用订单表的订单编号 商品编号 char 5 主键。外键,引用商品表的商品编号 数量 int 默认值为1 针对以上各表,用SQL语句完成以
31、下操作。 查询商品名称中包括“电”的商品详细信息Select * from商品 Where 商品名称 like %电%17、以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 取值为“男”或“女” 出生日期 datetime 课程 字段名称 数据类型 长度 备注 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键,引用学生表的外键 课号 char 4 主键,引用课程表
32、的外键 成绩 int 取值范围为:0100 针对以上各表,用SQL语句完成以下操作。 查询“数据库”课程的选课情况,列出学号、姓名、课程名、学分和成绩。Select 学号,姓名,课程名,学分,成绩from 学生 join 选课 on 学生.学号=选课.学号Join 课程 on 课程.课号=选课.课号Where 课程名=数据库18、'以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 取值为“男”或“女” 出生日期 datetime 课程 字段名
33、称 数据类型 长度 备注 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键,引用学生表的外键 课号 char 4 主键,引用课程表的外键 成绩 int 取值范围为:0100 针对以上各表,用SQL语句完成以下操作。 查询姓“李”的学生的学号和姓名Select 学号,姓名 from 学生Where 姓名 like %李%19、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键
34、 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩。 针对以
35、上各表,用SQL语句完成以下操作。 查询成绩80分以上的学生的姓名、课程号和成绩,并按成绩降序排列结果。Select sname,cno,grade from Student s join sc on s.sno=sc.snoWhere grade>80Order grade by desc20、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄
36、sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩。 针对以上各表,用SQL语句完成以下操作。 修改高等数学的考试成绩,修改规则如下:如果是计算机系学生,则加10分;如果
37、是信息管理系学生则加5分;如果是数学系学生则分数不变。Update sc set grade=grade+Case sdeptWhen 计算机系 then 10When 信息管理系 then 5When 数学系 then 0ENDFrom student s join sc on s.sno=sc.snoJoin course c on o=sc,cnoWhere cname=高等数学21、已知商品表、订单表、订单细节表、顾客表的结构如下所示: 商品 字段名称 数据类型 长度 备注 商品编号 char 5 主键 商品名称 varchar 50 单价 numeric(10,2) 库存数量 int
38、 取值大于等于0 顾客 字段名称 数据类型 长度 备注 顾客编号 char 5 主键 顾客姓名 varchar 50 订单 字段名称 数据类型 长度 备注 订单编号 char 10 主键 下单日期 date 顾客编号 char 5 外键,引用顾客表的顾客编号 订单细节 字段名称 数据类型 长度 备注 订单编号 char 10 主键。外键,引用订单表的订单编号 商品编号 char 5 主键。外键,引用商品表的商品编号 数量 int 默认值为1 针对以上各表,用SQL语句完成以下操作。 查询2012-12-1日的订单信息,显示:订单编号、下单日期、顾客姓名。Select 订单编号,下单日期,顾客姓
39、名 from顾客 join 订单 on 顾客.顾客编号=订单.顾客编号Where 下单日期=2012-12-122、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 cr
40、edit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号。外键,引用Student的“sno” cno char 4 主键 课程号。外键,引用Course的“Cno” grade int 成绩。 针对以上各表,用SQL语句完成以下操作。 查询平均成绩大于80的课程的课程名和学分。Select cname,credit ,AVG(grade) from Course c join sc on o=oGroup by cnoHaving AVG(grade)>80 23、以下是一个学生选课系统
41、数据库中的三张表:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 出生日期 datetime 课程 字段名称 数据类型 长度 备注 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键,引用学生表的外键 课号 char 4 主键,引用课程表的外键 成绩 int 取值范围为:0100 针对以上各表,用SQL语句完成以下操作。 删除学号为“2012001001”的学生选课信息。Delete from 选课Wh
42、ere 学号=201200100124、已知商品表、订单表、订单细节表、顾客表的结构如下所示: 商品 字段名称 数据类型 长度 备注 商品编号 char 5 主键 商品名称 varchar 50 单价 numeric(10,2) 库存数量 int 取值大于等于0 顾客 字段名称 数据类型 长度 备注 顾客编号 char 5 主键 顾客姓名 varchar 50 订单 字段名称 数据类型 长度 备注 订单编号 char 10 主键 下单日期 date 顾客编号 char 5 外键,引用顾客表的顾客编号 订单细节 字段名称 数据类型 长度 备注 订单编号 char 10 主键。外键,引用订单表的订
43、单编号 商品编号 char 5 主键。外键,引用商品表的商品编号 数量 int 默认值为1 针对以上各表,用SQL语句完成以下操作。 将下列信息插入到商品表中。 商品编号 商品名称 单价 库存数量 10001 电视机 2000 20insert into 商品 values(10001,电视机,2000,20)25、以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 取值为“男”或“女” 出生日期 datetime 课程 字段名称 数据类型 长度 备注
44、 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键,引用学生表的外键 课号 char 4 主键,引用课程表的外键 成绩 int 取值范围为:0100 针对以上各表,用SQL语句完成以下操作。 查询学号为“2012001001”学生的考试成绩,结果按成绩降序排列,列出学号、姓名、课程名和成绩Select 学号,姓名,课程名,成绩 from学生.学号 join 选课 on 学生.学号=选课.学号Join 课程.课号 on 课程.课号=选课.课号Where 学生.学号=2012001001Order by 成绩
45、desc26、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 出生日期 datetime 课程 字段名称 数据类型 长度 备注 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键 课号 char 4 成绩 int 针对以上各表,用SQL语句完成以下操作。 查询选课人数在3人以上课程的平均成绩Select 课号,AVG(成绩) from 选课Group
46、by 课号Having count(课号)>327、已知商品表、订单表、订单细节表、顾客表的结构如下所示: 商品 字段名称 数据类型 长度 备注 商品编号 char 5 主键 商品名称 varchar 50 单价 numeric(10,2) 库存数量 int 取值大于等于0 顾客 字段名称 数据类型 长度 备注 顾客编号 char 5 主键 顾客姓名 varchar 50 订单 字段名称 数据类型 长度 备注 订单编号 char 10 主键 下单日期 date 顾客编号 char 5 外键,引用顾客表的顾客编号 订单细节 字段名称 数据类型 长度 备注 订单编号 char 10 主键。外
47、键,引用订单表的订单编号 商品编号 char 5 主键。外键,引用商品表的商品编号 数量 int 默认值为1 针对以上各表,用SQL语句完成以下操作。 查询商品种类数大于2的订单(即订单细节中大于2行的订单),列出:订单编号和商品种类数。Select 订单编号,count(商品编号)as商品种类数 from 订单细节Group by 订单编号Having count(*)>228、以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 取值为“男”或
48、“女” 出生日期 datetime 课程 字段名称 数据类型 长度 备注 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键,引用学生表的外键 课号 char 4 主键,引用课程表的外键 成绩 int 取值范围为:0100 针对以上各表,用SQL语句完成以下操作。 查询成绩小于60的学生姓名、课程名及成绩Select 姓名,课程名,成绩 from 学生.学号 join 选课 on 学生.学号=选课.学号Join 课程.课号 on 课程.课号=选课.课号Where 成绩<6029、已知商品表、订单表、订单
49、细节表、顾客表的结构如下所示: 商品 字段名称 数据类型 长度 备注 商品编号 char 5 主键 商品名称 varchar 50 单价 numeric(10,2) 库存数量 int 取值大于等于0 顾客 字段名称 数据类型 长度 备注 顾客编号 char 5 主键 顾客姓名 varchar 50 订单 字段名称 数据类型 长度 备注 订单编号 char 10 主键 下单日期 date 顾客编号 char 5 外键,引用顾客表的顾客编号 订单细节 字段名称 数据类型 长度 备注 订单编号 char 10 主键。外键,引用订单表的订单编号 商品编号 char 5 主键。外键,引用商品表的商品编号
50、 数量 int 默认值为1 针对以上各表,用SQL语句完成以下操作。 查询订购了“10001”号商品的所有订单,显示:订单编号和下单日期,结果按下单日期降序排列Select 订单编号,下单日期 from Where 商品编号=10001Order by 下单日期 desc30、已知商品表、订单表、订单细节表、顾客表的结构如下所示: 商品 字段名称 数据类型 长度 备注 商品编号 char 5 主键 商品名称 varchar 50 单价 numeric(10,2) 库存数量 int 取值大于等于0 顾客 字段名称 数据类型 长度 备注 顾客编号 char 5 主键 顾客姓名 varchar 50
51、 订单 字段名称 数据类型 长度 备注 订单编号 char 10 主键 下单日期 date 顾客编号 char 5 外键,引用顾客表的顾客编号 订单细节 字段名称 数据类型 长度 备注 订单编号 char 10 主键。外键,引用订单表的订单编号 商品编号 char 5 主键。外键,引用商品表的商品编号 数量 int 默认值为1 针对以上各表,用SQL语句完成以下操作。 查询每个订单的商品总金额,列出:订单编号和总金额。Select 订单编号,sum(单价*数量)as 总金额 from 商品.商品编号 join 订单细节 on 商品.商品编号=订单细节.商品编号Group by 订单编号31、以
52、下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 出生日期 datetime 课程 字段名称 数据类型 长度 备注 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键 课号 char 4 成绩 int 。 针对以上各表,用SQL语句完成以下操作。 将课号为“1001”的课程学分改为4Update 课程 set 学分= 4 Where 课号=1000132、
53、以下是一个学生选课系统数据库中的三张表:学生表、课程表、选课表,表结构如下所示: 学生 字段名称 数据类型 长度 备注 学号 char 10 主键 姓名 varchar 50 性别 char 2 出生日期 datetime 课程 字段名称 数据类型 长度 备注 课号 char 4 主键 课程名 varchar 100 学分 int 选课 字段名称 数据类型 长度 备注 学号 char 10 主键,引用学生表的外键 课号 char 4 主键,引用课程表的外键 成绩 int 取值范围为:0100 针对以上各表,用SQL语句完成以下操作。 将下列信息插入到学生表中 学号 姓名 性别 出生日期 201
54、2001001 王五 男 1982-1-23Insert into 学生 values (2012001001,王五,男,1982-1-23)33、已知一个数据表的结构如下,表名为“Product”。 列名 数据类型 长度 备注 描述 ProductID char 12 主键 商品编号 ProductName var char 50 商品名称 ProductPrice float 商品价格 ProductMemo Varchar 50 备注 由于供应商对商品的批发价格进行调整,现需对现行商品价格进行调整,规则如下:原价格小于10元上调8%,原价格大于30元上调6%,其它上调7%,请编写一段SQ
55、L脚本完成上述功能。Update product set productpriceCaseWhen productprice<10 then productprice*1.08When productprice>30 then productprice*1.06Else productprice*1.07END 34、以下是一个学生选课系统的数据库,包括三张表,分别为:学生表、课程表、选课表,表结构如下所示: Student(学生表) 字段名称 数据类型 长度 备注 含义 sno char 10 主键 学号 sname varchar 20 姓名 ssex char 2 性别 sage tinyint 年龄 sdept varchar 30 所在系 Course(课程表) 字段名称 数据类型 长度 备注 含义 cno char 4 主键 课程号 cname varchar 100 课程名 credit int 学分 semester tinyint 开课学期 SC(选课表) 字段名称 数据类型
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论