前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >深圳软件测试学习:oracle数据库—子查询--千锋

深圳软件测试学习:oracle数据库—子查询--千锋

原创
作者头像
深圳java培训技术
修改2019-11-05 16:59:12
6670
修改2019-11-05 16:59:12
举报
文章被收录于专栏:深圳java培训深圳java培训

深圳软件测试学习:oracle数据库—子查询--千锋

在一个查询中继续包含另外一个查询,称为子查询

子查询可以出现在任意的位置:SELECT、FROM 、WHERE

子查询的类型:

· 单列子查询:返回的结果是一列的一个内容,出现几率最高

· 单行子查询:返回多个列,有可能是一条完整的记录

· 多行子查询:返回多条记录

在使用子查询的时候注意一下事项:

1.子查询必须用()括起来

2.子查询中不能包括order by子句

3.子查询允许嵌套多个,但是不要超过255个

一、单行子查询

单行子查询是指返回一行数据的子查询语句。

案例:在emp表中查询不是最低工资的员工信息。

select * from emp

where sal >(select min(sal) from emp);

二、多行子查询

多行子查询是指返回多行数据的子查询语句,当在where子句中使用多行子查询,必须使

1.使用in运算符

只要匹配一个结果成功,就会返回检索记录

案例:查询不是销售部门(sales)的员工信息

select * from emp

where deptno in

(select deptno from dept where dname <> ‘SALES’);

三,关联子查询

关联子查询

内查询的执行需要借助于外查询,而外查询的执行又离不开内查询的执行,这时,内查询和外查询是相互关联的,这种查询方式被称为关联子查询

案例:检索工资大于同职位的平均工资的员工信息

select empno,ename,sal

from emp f

where sal >(select avg(sal) from emp where job=f.job)

order by job;

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档