数据库常见代码整理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学生选课库的关系模式为:
查询选修了课程名为“数据库”的学生的学号和姓名。
π学号,姓名( σ课程名= ‘数据库’ (学生∞选课∞课程))
查询“计算机系”的学生所选修的课程的课程号和课程名?
π课程号,课程名( σ所在系= ‘计算机系’ (学生∞选课∞课程))
没有选修课程号为C02课程的学生学号。
π学号(学生)-π学号(σ课程号= ‘C02’(选课))
查询每个学生的学号、姓名、选修的课程名及成绩。
π学号,姓名,课程名,成绩(学生∞课程∞选课)
查询选修了课程号为C01课程的学生的学号、姓名和成绩。
π学号,姓名,成绩( σ课程名= ‘C01’ (学生∞选课∞课程))
查询选修了C01号课程或C02号课程的学生学号和成绩。
π学号,成绩(σ课程号= ‘C01’(选课)) ∪π学号,成绩(σ课程号= ‘C02’(选课))
查询同时选修C01课程和选修C02课程的学生学号和成绩。
π学号,成绩(σ课程号= ‘C01’(选课)) ∩π学号,成绩(σ课程号= ‘C02’(选课))
数据查询
1.查询某个学生的选课记录,包括课程号、成绩,并按课程号降序排序。(学号为0001026或姓名为王萍) Select cid, score from scoreinfo
Where sid=‘0001026’ or sname=‘王萍’
Order by cid desc
2.查询所有学号以101开头或结尾(或姓张)的学生的学号、姓名和所在系。
Select sid, sname, dept from stuinfo
Where sid like ‘101%’
3.查询某个系年龄不大于20岁的男同学的姓名及其年龄(如计算机系) 。
Select sname, sage from stuinfo
Where sage <=‘20’and sex=‘男’and dept=‘计算机系’
4.查询选修某一门课的学生的学号和成绩, 查询结果按分数降序排列。(课程名为“数据分析”)
Select sid, score from scoreinfo Where cname =‘数据分析’
Order by score desc
5.查询某个系的学生的选课情况,包括学号、姓名、课程号和成绩,按课程号降序排列(如计算机系)。
Select stuinfo.sid, stuinfo.sname, scoreinfo.cid, scoreinfo.score from stuinfo, scoreinfo
Where stuinfo.sid=scoreinfo.sid and stuinfo.dept = ‘计算机系’
Order by scoreinfo.cid desc
6.查询学生表中都有哪些专业或者选课表中都有哪些课被选了。
Select distinct major from stuinfo Select distinct cid from scoreinfo
7.分组统计每个学生的选课门数,显示学号和选课门数。
Select sid as 学号,count(cid) as 选课门数 from scoreinfo
Group by sid
8.分组统计查询每门课的平均分、最高分、最低分,显示课程号、平均分、最高分和最低分。
Select cid as 课程号,avg (score) as 平均分,max (score) as 最高分,min (score) as 最低分 from scoreinfo Group by cid
数据输入修改删除
将
所有学生的年龄增加1岁。
Update Stuinfo SET Sage = sage+1
输入某位学生某门课的成绩。(学号100026,课程号C0002,成绩86)
Insert into scoreinfo (SID,CID,Score) Values (‘100026’, ‘C0002’, ‘86’)
删除某一门课的选课记录。(课程号C0005)
Delete from courseinfo Where cid=‘C0005’
删除某个学生的选课记录。(学号100026)
Delete from stuinfo Where sid=‘100026’