Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!

《数据库原理》实验7(嵌套查询) PDF 下载


分享到:
时间:2021-11-04 07:15来源:http://www.java1234.com 作者:转载  侵权举报
《数据库原理》实验7(嵌套查询) PDF 下载
失效链接处理
《数据库原理》实验7(嵌套查询)  PDF 下载



本站整理下载:
提取码:hjr2 
 
 
相关截图:
 
主要内容:

一、实验目的
掌握SELECT语句的嵌套使用,实现多表的复杂查询,进一步理解SELECT语句的高级使用方法。
二、实验环境
已安装SQL Server 2008 企业版的计算机
三、实验学时
2学时
四、实验要求
1.了解SELECT语句的基本语法格式和执行方法;
2.了解嵌套查询的表示及使用;
3.完成实验报告。
五、实验原理
使用嵌套查询时,先用内查询(子查询)挑选出部分数据,以作为外查询(主查询)的数据来源或搜索条件。包含子查询的语句通常采用以下格式:
WHERE  表达式  [NOT]  IN  (子查询)
WHERE  表达式   比较运算符   [ANY|ALL]   (子查询)
WHERE  [NOT]  EXISTS   (子查询)
其中前两种又称为不相关子查询,子查询的查询条件不依赖其父查询,所以可以先求出子查询的结果,然后由内到外逐层求解。最后一种为相关子查询,其子查询的查询条件依赖于外层父查询的某个属性值,所以不能先一次性地求出子查询的结果。
六、实验示例
1、由employee表中查找出薪水最高的员工信息。
select *
from employee
where salary=
       (select max(salary )
        from employee )
2、由sales表中查找出订单金额大于“E0013业务员在1996/11/10这天所接每一张订单的金额”的所有订单。
select *
from sales
where tot_amt>all
       (select tot_amt 
        from sales 
        where sale_id='E0013'and order_date='1996/10/15')
order by tot_amt
 
3、用存在量词查找没有订货记录的客户名称
select cust_name
from customer a
where not exists
   (select *
    from sales b
    where a.cust_id=b.cust_id)
 
七、实验内容
请使用T-SQL 语句实现进行以下操作:
针对S_T数据库
1.查询所选课程的平均成绩大于刘晨的平均成绩的学生学号、姓名及平均成绩;
select student.sno,sname,平均成绩=avg(grade)
from student,sc
where student.sno=sc.sno
group by student.sno,sname
having avg(grade)>(
select avg(grade)
from sc,student
where student.sno=sc.sno and sname like '刘晨');
 
 
 
2.列出只选修一门课程的学生的学号、姓名、院系及成绩;
select  student.sno,sname,sdept,grade
from student,sc
where student.sno=sc.sno and student.sno =
(select student.sno
from student,sc
where student.sno=sc.sno
group by student.sno
having count(cno)=1)

 

------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐