日期:2014-05-16  浏览次数:20458 次

数据库查询之(Ⅳ)子查询与合并查询

(以下例子操作的表都在如下表中)

嵌套查询:在Where子句中包含一个形如Select-From-Where的查询块,次查询块成为子查询或嵌套查询

 1.     返回一个值的子查询(使用比较运算符(=>,<,>=,<=,!=))

例:查询与“刘伟”老师职称相同的教师号、姓名。

        Select TNo,TN from T where prof=(select prof from T where TN=’刘伟’)

2.     使用ANY 关键字

     例1:查询讲授课程号为C5的教师姓名

        Select TN from T where TNo=       ANY(select TNo from TC where CNo=’C5’)(注释:该语句等价于select TN from T,TC where T.TNo=TC.TNo and TC.CNo=’C5’)

       2:查询其它系中比计算机系某一教师工资高的教师的姓名和工资。

      Select TN,Sal from T where (Sal>ANY(select Sal from T where Dept=’计算机’)) and Dept<>’计算机

(注:该语句等价于Select TN,Sal from T where (Sal>(select MinSal from T where Dept=’计算机’)) and Dept<>’计算机))

3,使用All关键字

1:查询其它系中比计算机系所有教师工资都高的教师的姓名和工资