c语言sscanf函数的用法是什么
286
2022-09-07
oracle子查询
子查询:
■ 什么是子查询
子查询是指嵌入在其它sql语句中的select语句,也叫嵌套查询
■ 单行子查询
单行子查询是指只返回一行数据的子查询语句
select * from emp where deptno=(select deptno from dept where deptno=30);
请思考:如何显示与SMITH同一部门的所有员工?
■ 多行子查询
多行子查询指返回多行数据的子查询
select * from emp where deptno in (10,20,30,40);
->select * from emp where deptno in ( select deptno from emp );
select * from emp where deptno in(30);
->select * from emp where deptno in( select deptno from dept where deptno=30)
->select * from emp where deptno in( select deptno from dept where dname='SALES')
#多列子查询:返回多个字段的多行数据
select * from emp where (deptno,ename) in (select deptno,ename from emp where sal>800);
多表查询:
#多表查询是指基于两个和两个以上的表或是视图的查询.在实际应用中,查询单个表可能不能满足你的需求
1、如显示sales部门位置和其员工的姓名),这种情况下需要使用到(dept表和emp表)
思路:找到sales部门的编号deptno,根据编号找到对应的员工,工作地址
select e.ename ,d.loc from emp e,dept d where (e.deptno,d.deptno) in (select dd.deptno,dd.deptno from dept dd where dd.dname='SALES');
长的,笨的
select e.ename,d.loc from emp e,dept d where e.deptno =(select deptno from dept where dname='SALES') and d.deptno =(select deptno from dept where dname='SALES');
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~