数据库实验三
更新时间:2024-01-06 07:59:01 阅读量: 教育文库 文档下载
计算机与信息学院实验报告
系: 专业: 年级: 姓名: 学号: 22 实验室号 计算机号 22 实验时间: 2013年10月29日 指导教师签字: 成绩: 报告退发 (订正 、 重做)
实验名称:(三)数据库的定义实验
一、 实验目的和要求
(1)掌握SQL Server查询分析器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。
(2)熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。 (3)熟练掌握数据查询中的分组、统计、计算和组合的操作方法。
二、 实验内容和原理
1. 基本操作实验
用Transact-SQL语句表示下列操作.在学生-课程库中实现其数据查询操作: (1)求数学系学生的学号和姓名。
(2)求选修了高等数学的学生学号、姓名和成绩。
(3)求选修C1课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。
(4)获选修课程C1且成绩在80~90分之间的学生学号、姓名及成绩,并将成绩乘以系数0.8输出。
(5)求数学系或计算机系姓张的学生的信息。 (6)求缺少了成绩的学生的学号和课程号。
(7)求C1课程的成绩高于张三的学生学号和成绩。 (8)求其他系中比计算机系学生年龄都小的学生。 (9)查询选修了全部课程的学生的姓名。
(10)求至少选修了学生“张三”所选修的全部课程的学生学号和姓名。 (11)查询每一门课的间接先行课(即先行课的先行课)。 在图书-图书库中实现其查询操作。
(1)查找这样的图书类别:要求类别中最高的图书定价不低于全部按类别分组的图书平均定价的2倍。
(2)求机械工业出版社出版的各类图书的平均定价,用GROUP BY表示。 (3)列出计算机类图书的书号、名称及价格,最后求出册数和总价格。
(4)列出计算机类图书的书号、名称及价格,并求出各出版社这类书的总价格,最后求出全部册数和总价格。
(5)查询计算机类和机械工业出版社出版的图书。
(6)在图书-借阅库中实现其查询操作:将计算机类的书存入永久的计算机图书表中,将借书日期在1999年以前的借阅记录存入临时的超期借阅表。
用Transact-SQL语句表示,并在学生选课库中实现下列数据连接查询操作:
2. 提高操作实验
(1)按表1的格式,建立职工部门库和职工表、部门,并向表中输入数据。
表1 职工和部门表数据
职工表 部门表 职工号 1010 1011 1012 1013 姓名 李勇 刘晨 王敏 张立 性别 男 女 女 男 年龄 20 19 22 21 部门 11 部门号 11 12 13 14 部门名称 生产科 计划科 一车间 科研所 电话 566 578 467 12 13 (2)用Transact-SQL语句表示职工和部门之间的内连接、左外部连接和右外部连接,在职工部门库中实现其数据内连接和各种外查询操作。
三、 实验环境
硬件:计算机
软件:Windows 2000和SQL Server 2000
四、 算法描述及实验步骤 五、 调试过程 六、 实验结果 七、 总结
Sql语句: /*
用Transact-SQL语句表示下列操作.在学生-课程库中实现其数据查询操作: (1)求数学系学生的学号和姓名。
(2)求选修了高等数学的学生学号、姓名和成绩。
(3)求选修C1课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。
(4)获选修课程C1且成绩在~分之间的学生学号、姓名及成绩,并将成绩乘以系数.8输出。
(5)求数学系或计算机系姓张的学生的信息。 (6)求缺少了成绩的学生的学号和课程号。
(7)求C1课程的成绩高于张三的学生学号和成绩。 (8)求其他系中比计算机系学生年龄都小的学生。 (9)查询选修了全部课程的学生的姓名。
(10)求至少选修了学生“张三”所选修的全部课程的学生学号和姓名。 (11)查询每一门课的间接先行课(即先行课的先行课)。 */
insert into student values('0007','abc7',21,'女','数学系');
insert into student values('0008','abc8',24,'男','计算机系'); insert into student values('0009','abc9',22,'男','数学系'); insert into student values('0010','abc10',21,'女','计算机系');
select * from student;
--(1)求数学系学生的学号和姓名。
select sno,sname from student where sdept='数学系'; --(2)求选修了高等数学的学生学号、姓名和成绩。 select * from student; select * from course; select * from sc;
update course set cname='高等数学' where cno='c004';
select student.sno,sname,crade from student,course,sc where course.cno=sc.cno and student.sno=sc.sno and course.cname='高等数学';
--(3)求选修C1课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。
insert into course values('c1','C++','c001',4,78);
insert into sc values('0008','c001',92); insert into sc values('0008','c1',95); insert into sc values('0010','c001',90); insert into sc values('0010','c1',83);
select sno,crade from sc where cno='c1' order by crade desc,sno asc;
--(4)获选修课程C1且成绩在~分之间的学生学号、姓名及成绩,并将成绩乘以系数.8输出。
select student.sno,sname,crade*0.8 as 成绩from student,sc where student.sno=sc.sno and cno='c1' and (crade between 80 and 90);
--(5)求数学系或计算机系姓张的学生的信息。
insert into student values('1000','张三',22,'男','数学系');
insert into student values('1001','张小小',21,'女','计算机系'); insert into student values('1002','张敏',21,'女','计算机系');
--select * from student where sname like '张%' and sdept='数学系' or sdept='计算机系';
select * from student where sname like '张%' and sdept in ('数学系','计算机系');
--(6)求缺少了成绩的学生的学号和课程号。
insert into sc values('1002','c001',null);
select sno,cno from sc where crade is null;
--(7)求C1课程的成绩高于张三的学生学号和成绩。 insert into sc values('1000','c1',85);
select sno,crade from sc where cno='c1' and crade >(select crade from sc,student where sc.sno=student.sno and sname='张三' and cno='c1') ;
--(8)求其他系中比计算机系学生年龄都小的学生。
select * from sc;
select * from student; select * from course;
insert into student values('2001','王玲',19,'女','生物技术系'); insert into student values('2002','李莉',20,'女','城市规划系'); insert into student values('5001','黄成',20,'男','土木工程系');
select * from student where sage < (select min(sage) from student where sdept='计算机系') and sdept not in('计算机系');
--(9)查询选修了全部课程的学生的姓名。 insert into sc values('1001','c001',83); insert into sc values('1001','c004',93); insert into sc values('1001','c002',97); insert into sc values('1001','c005',80); insert into sc values('1001','c006',77); insert into sc values('1001','c007',81); insert into sc values('1001','c1',89);
select sname from student where not exists( select * from course where not exists ( select * from sc where sc.sno=student.sno and sc.cno=course.cno ) );
--(10)求至少选修了学生“张三”所选修的全部课程的学生学号和姓名。
select student.sno,sname from student where sno in ( select distinct sno from sc s1 where not exists ( select * from sc s2 where sno=(select sno from student where sname='张三') and not exists( select * from sc s3 where s3.sno=s1.sno and s3.cno=s2.cno ) ) );
--(11)查询每一门课的间接先行课(即先行课的先行课)。 select * from course;
select first.cno,second.cpno from course first,course second where first.cpno = second.cno; /*
在图书-图书库中实现其查询操作。
(1)查找这样的图书类别:要求类别中最高的图书定价不低于全部按类别分组的图书平均定价的倍。
(2)求机械工业出版社出版的各类图书的平均定价,用GROUP BY表示。 (3)列出计算机类图书的书号、名称及价格,最后求出册数和总价格。
(4)列出计算机类图书的书号、名称及价格,并求出各出版社这类书的总价格,最后求出全部册数和总价格。
(5)查询计算机类和机械工业出版社出版的图书。
(6)在图书-借阅库中实现其查询操作:将计算机类的书存入永久的计算机图书表中, 将借书日期在年以前的借阅记录存入临时的超期借阅表。 */
use DB_BookAndReader go
--(1)查找这样的图书类别:要求类别中最高的图书定价不低于全部按类别分组的图书平均定价的倍。 select * from book;
insert into book values('1001','语言','清华大学','HF','汉语的由来',77);
insert into book values('1002','科技','华中科技大学','李四','未来的移动终端形式',89); insert into book values('1003','计算机','清华大学','FZX','C++程序设计',57); insert into book values('1004','数学','清华大学','FS','线性代数',45); insert into book values('1005','经济','清华大学','GM','香港地产',119); insert into book values('2003','计算机','清华大学','FZX','oracle',300);
--select max(pricing),type from book group by type;
正在阅读:
数据库实验三01-06
盘县洒基兴镇荣祥矿井(整合)水土保持方案报告书(报批稿)修复04-13
江苏省科技计划项目申报书201206-08
汇编语言第一次作业12-08
南京市江宁区人民政府关于公布征地拆迁补偿安置标准通知 江宁政06-27
国际经济学习题 有答案 权威大学资料05-01
台湾地区行政法学研究集大成之巨著_评翁岳生主编之_行政法_04-24
学习部一帮一学习小组活动策划书04-13
成本会计6(产品成本计算的品种法)08-24
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 实验
- 数据库
- 二次结构蒸压加气溷凝土砌块砌筑-工程施工方案 - secret
- 2017-2018幼儿园教师招聘考试幼儿园教师编制考试题库试题及答案二十五套
- 恒宇GPS--HY-8000GPS时间同步系统说明书(NEW)
- 班子研判报告
- 西郊泵站清淤施工管理报告
- 精品学习2017秋六年级数学上册第四单元比和按比例分配教案西师大版
- 运用政府经济学的基本原理和相关知识,对我国政府宏观经济管理的政策进行分析撰写一篇不少于1500字的小论文
- 高考模拟英语作文满分法宝
- 计算机网络协议仿真实验
- umb+lte+wimax三种技术的简单介绍
- 一年级语文上册教案-课文 4 四季
- 演讲比赛通知
- 年产20万吨腐植酸盐建设项目可研报告
- 自定义动画说课稿
- 高一政治限时训练六
- 机关会议制度
- 沧州市贸易代理行业企业名录2018版445家 - 图文
- 六年级数学上册第四单元比和按比例分配教案西师大版(全汇总版)
- 煤矿法律法规知识子题库
- 信用社信贷处题库