SQLServer 查询

1.嵌套查询:将一个查询块嵌套在另一个查询块的where子句或having短语的条件中的查询成为嵌套查询;

                     (子查询的select语句中不能使用order;order by子句只能对最终查询结果排序。

例子:

1 --查询成绩高于学号为“109”、课程号为“3-105”的成绩的所有记录。
2 select * from SCORE where DEGREE > (select DEGREE from SCORE where SNO='109' and CNO='3-105')

2.子查询:子查询可以出现在from子句中,这时子查询生成的临时派生表,称为主查询的查询对象

1 --查询所有选修了1号课程的学生姓名  (当然也可以使用嵌套查询)
2 select Sname from Student,(select * from SC where cno='1') SC1 where Student.sno=SC1.sno
 
 

子查询可以嵌套在INSERT语句中用以生成要插入的批量数据

1 --对每个系,求学生的平均年龄,再把结果插入Dept_age(Sdept,Avg_age)中
2 insert  into Dept_age(Sdept,Avg_age)
3 select Sdept.AVG(Sage)
4 from Student
5 group by Sdept

猜你喜欢

转载自blog.csdn.net/qq_28746577/article/details/80337567