实验二 SQL查询语言实验

实验方法与步骤(需求分析、算法设计思路、流程图等)

# 仓库地址
https://gitee.com/njit-wlk/njit-database

1.利用SQL语句条件查询
(1).查询person表中所有不重复的职称
语句:

select distinct professor from person

(2).查询person表中男员工的信息
在这里插入图片描述

(3).查询person表中00102部门的女员工的信息
在这里插入图片描述

(4).查询000001员工的基本工资增长1.5倍后实际收入
在这里插入图片描述

(5).查询00102部门的员工的基本信息和工资情况,按实际工资降序排列
在这里插入图片描述

(6).查询各部门2005年实发工资总数
在这里插入图片描述

(7)查询2005年1月平均奖金不小于400的部门,按平均奖金升序排列
在这里插入图片描述

(8)查询市场部所有员工姓名和2005年1月工资明细
在这里插入图片描述

2.利用SQL语句嵌套查询
(1).查询2005年1月比000001员工实发工资高的所有员工的基本信息
在这里插入图片描述

(2).查询2005年1月比00102部门的所有员工实发工资都高的员工的基本信息
在这里插入图片描述

(3).查询2005年1月比所有员工平均实发工资都高的员工基本信息和工资明细
在这里插入图片描述

3.利用SQL语句创建视图
(1).在基表person基础上创建员工视图view_person,其中包括工号,姓名,性别,职称,部门代码字段
在这里插入图片描述

(2).在基表person,pay,dept基础上创建员工工资视图view_pay,其中包括年份,月份,工号,性别,职称,部门名称,基本工资,奖金,扣除,实发工资字段.
在这里插入图片描述

四、练习
对Education数据库进行以下的查询操作
(1).检索学分等于4的所有课程的课程号的课程名
在这里插入图片描述

(2).检索年龄在20和30岁之间的学生的学号和姓名
在这里插入图片描述

(3).检索刘晨同学不学课程的课程号
在这里插入图片描述

(4).检索所有姓刘的学生的基本信息
在这里插入图片描述

(5).检索所有选修了课程的学生基本信息和选课情况
在这里插入图片描述

(6).检索所有学生基本信息及选课情况
在这里插入图片描述

(7).检索成绩为空值的学生姓名和课程名
在这里插入图片描述

(8).统计有学生选修的课程门数
在这里插入图片描述

(9).检索至少选修两门课程的学生学号和姓名
在这里插入图片描述

(10).查询选修了课程名为”数据库原理”课程的学生的平均年龄
在这里插入图片描述

(11).为”计算机”系创建一个视图:CS_S(sno,sname,cname,grade)
在这里插入图片描述

五、拓展
(1).查询选修人数超过15的课程的课程名称和学生人数,查询结果按人数降序排列,若人数相同,按课程名称升序排列

select sc.Cno,count(distinct sc.Sno) as 选修人数
from course,sc
where course.Cno=sc.Cno
group by sc.Cno
having count(distinct Sno)>=15
order by 2 desc,1 asc

(2).查询课程号为”1001”课程考试成绩排名为5-7名的学生的学号和成绩

select top 3 sno,grade
from sc
where(Cno='1001')and(Sno not in
	(select top 4 Sno
	from sc
	where Cno='1001'
	order by grade desc))
	order by grade desc
  • 9
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
1、使用SQL Server 2000企业管理器和查询分析器工具(即用Transact-SQL语句)创建一个“图书读者数据库”(Book_Reader_DB); 2、使用企业管理器查看Book_Reader_DB的数据库属性,并进行修改,使之符合你的要求; 3、使用企业管理器和在查询分析器中用Transact-SQL语句的两种方法建立图书、读者和借阅三个表,其结构为: 图书(书号,类别,出版社,作者,书名,定价,备注); 读者(编号,姓名,单位,性别,电话); 借阅(书号,读者编号,借阅日期)。 要求:① 对每个属性选择合适的数据类型;② 定义每个表的主码、是否允许空值和默认值等列级数据约束;③ 对每个表的名字和表中属性的名字尽可能用英文符号标识。 4、实现相关约束:①使用企业管理器来建立上述三个表的联系,即实现:借阅表与图书表之间、借阅表与读者表之间的外码约束;② 实现读者性别只能是“男”或“女”的约束。 5、分别用企业管理器和查询分析器修改表的结构。在“图书”表中,增加两个字段,分别为“数量”和“购买日期”。在“借阅”表中增加一个“还书日期”字段。 6、用企业管理器在上述三个表中输入部分虚拟数据。 7、在查询分析器中实现基于单个表的查询 ① select * from Book ② select * from book where Bclass=’计算机’ ③ select count(*) from book group by Bclass ④ select * from Reader ⑤ select * from Borrow ⑥ select rno, count(bno) from Borrow group by rno order by rno ⑦ select bno, count(rno) from Borrow group by bno order by bno 做实验时,还可以虚拟用户的一些其它查询要求,并用Transact-SQL语句予以实现。 上述每项实验内容相应的实验步骤必须进行详细的记录,并将其整理后写在实验报告中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值