十分感谢您的回答,本人尚有一些疑问请您解答,谢谢!关于下面的SQL数据库题目
使用SQL创建一个数据库为XSCJ数据库。使用的数据库为XSCJ数据库,按图表结构创建三表。其中有三张表XS,XS_KC,KC表中结构和数据如下:XS表学号姓名专业名性别...
使用SQL创建一个数据库为XSCJ数据库。
使用的数据库为XSCJ数据库,按图表结构创建三表。
其中有三张表XS,XS_KC,KC
表中结构和数据如下:
XS表
学号 姓名 专业名 性别 出生年月 总学分 备注
001101 王林 计算机 1 1980-7-7 50
001102 张三 计算机 0 1981-4-1 50
001103 李斯 计算机 1 1980-1-9 54 三好生
001104 李四 计算机 0 1981-5-8 55
002101 高山 通信工程 1 1978-5-5 45
002102 赵涛 通信工程 1 1982-4-4 46 优秀学生
002103 李林 通信工程 0 1980-2-9 50
003101 王小 英语 1 1982-2-7 60
003102 吴萍 英语 0 1983-4-9 61 三好生
KC表
课程号 课程名 学时 学分
101 计算机基础 80 5
102 C语言 80 5
206 离散数学 68 4
208 操作系统 68 4
210 数据库原理 85 5
301 计算机网络 51 3
302 数据结构 80 5
XS_KC表
学号 课程号 成绩 学分
001101 101 87 5
001101 102 67 5
001101 206 78 4
001101 302 90 5
001102 101 56 0
001102 102 80 5
001102 206 72 4
001102 302 87 5
001103 101 67 5
001103 102 78 5
001103 206 69 4
001103 302 86 5
001104 101 57 0
001104 102 80 5
001104 206 90 4
001104 302 60 5
1、查询计算机专业的所有学生的学号使用number显示,姓名使用name显示。
2、查询选修了101课程的学生的学号和成绩。
3、使用LIKE语句查询姓张和李的所有学生的学号,姓名,专业。
4、使用IN语句查询课程号101,102,302的课程信息。
5、查询选修了302课程并且成绩在70到80分的学生的学号,姓名,并降序排列。
6、统计选修了各门课程的修课人数。
7、查找选修了102课程的成绩高于所有选修了101的成绩的学生的学号和成绩。
8、统计选修了c语言的及格人数。
9、查询的低于各门课程的平均分的的学号,成绩。
10、查询未选修了计算机基础的学生信息。
-------------------------------------------------------------------------
第5.7.9题这样解答是否有错?
5.select number,name
from XS
where 课程号='302' and 成绩 between 70 and 80 order by number DESC
7.select number,name
from XS
where 课程号='102' and 成绩>课程号='101'
9.select number,成绩
from XS_KC
where 成绩<avg成绩
如果可以的话请写出正确答案供本人参考,谢谢您在百忙中帮助我,万分感谢 展开
使用的数据库为XSCJ数据库,按图表结构创建三表。
其中有三张表XS,XS_KC,KC
表中结构和数据如下:
XS表
学号 姓名 专业名 性别 出生年月 总学分 备注
001101 王林 计算机 1 1980-7-7 50
001102 张三 计算机 0 1981-4-1 50
001103 李斯 计算机 1 1980-1-9 54 三好生
001104 李四 计算机 0 1981-5-8 55
002101 高山 通信工程 1 1978-5-5 45
002102 赵涛 通信工程 1 1982-4-4 46 优秀学生
002103 李林 通信工程 0 1980-2-9 50
003101 王小 英语 1 1982-2-7 60
003102 吴萍 英语 0 1983-4-9 61 三好生
KC表
课程号 课程名 学时 学分
101 计算机基础 80 5
102 C语言 80 5
206 离散数学 68 4
208 操作系统 68 4
210 数据库原理 85 5
301 计算机网络 51 3
302 数据结构 80 5
XS_KC表
学号 课程号 成绩 学分
001101 101 87 5
001101 102 67 5
001101 206 78 4
001101 302 90 5
001102 101 56 0
001102 102 80 5
001102 206 72 4
001102 302 87 5
001103 101 67 5
001103 102 78 5
001103 206 69 4
001103 302 86 5
001104 101 57 0
001104 102 80 5
001104 206 90 4
001104 302 60 5
1、查询计算机专业的所有学生的学号使用number显示,姓名使用name显示。
2、查询选修了101课程的学生的学号和成绩。
3、使用LIKE语句查询姓张和李的所有学生的学号,姓名,专业。
4、使用IN语句查询课程号101,102,302的课程信息。
5、查询选修了302课程并且成绩在70到80分的学生的学号,姓名,并降序排列。
6、统计选修了各门课程的修课人数。
7、查找选修了102课程的成绩高于所有选修了101的成绩的学生的学号和成绩。
8、统计选修了c语言的及格人数。
9、查询的低于各门课程的平均分的的学号,成绩。
10、查询未选修了计算机基础的学生信息。
-------------------------------------------------------------------------
第5.7.9题这样解答是否有错?
5.select number,name
from XS
where 课程号='302' and 成绩 between 70 and 80 order by number DESC
7.select number,name
from XS
where 课程号='102' and 成绩>课程号='101'
9.select number,成绩
from XS_KC
where 成绩<avg成绩
如果可以的话请写出正确答案供本人参考,谢谢您在百忙中帮助我,万分感谢 展开
展开全部
就你的问题我来说说吧,你这三道题全错。数据库里有三张表,先看你的第五题,这是什么查询?查询number,name从XS表,课程号='302' 和.. 在xs表中有课程号吗? 这两张表你要借助他的中间表xs-kc 这张表里将第一张表和第三张表的关系联系在一起。我建议你用联合查询
select x.number,x.name
from XS x,KC k,XS_KC xk
where x.学号=k.学号 and k.课程号=xk.课程号 and k.课程号='302' and xk.成绩 between 70 and 80 order by x.number DESC
这是第五题的结果,你可以参照第五题来将下面两道题完成
select x.number,x.name
from XS x,KC k,XS_KC xk
where x.学号=k.学号 and k.课程号=xk.课程号 and k.课程号='302' and xk.成绩 between 70 and 80 order by x.number DESC
这是第五题的结果,你可以参照第五题来将下面两道题完成
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询