网站大量收购独家精品文档,联系QQ:2885784924

韩顺平_玩转oracle_10g_实战教程第2讲.ppt

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
韩顺平_玩转oracle_10g_实战教程第2讲

* * * 内连接案例 select stu.id,exam.id,stu.name, exam.grade from stu inner join exam on stu.id=exam.id ?===?等价于 select stu.id,exam.id,stu.name, exam.grade from stu , exam where stu.id=exam.id * 完全外连接: select * from stu s full outer join exam e on s.id=e.id; * 1.左外联 select d1.dname,e1.* from dept d1 left join emp e1 on d1.deptno=e1.deptno 2. 右外联 select e1.*,d1.dname from emp e1 right join dept d1 on d1.deptno=e1.deptno; * * * ORACLE中默认的日期格式DD-MON-YY dd 日子(天),mon 月份 yy 2位的年 09-6月-99 1999年6月9号 改日期的默认格式 alter session set nls_date_format = yyyy-mm-dd; * 插入空值 : insert into student(xh,xm,sex,birthday) values (A004,MARTIN,男,null); * * * * * * * * select sal*13+nvl(comm,0)*13 年工资,ename,comm from emp; select ename || is a || job from emp; * * * * * * * * * * * 第一个方法: select ename,sal,dept from emp where salany (select sal from emp where deptno=30); 第二种方法: Select ename,sal,deptno from emp where sal(select min(sal) from emp where deptno=30); * * * * * * * 1.create table mytable (id,name,sal,job,deptno) as select empno,ename,sal,job,deptno from emp; 2. insert into mytable (id,name,sal,job,deptno) select empno,ename,sal,job,deptno from emp; * * * 主讲 韩顺平 玩转oracle 10g实战教程 oracle表复杂查询—多表查询 ■ 自连接 自连接是指在同一张表的连接查询。 ?显示员工的上级领导的姓名 比如显示’FORD’的上级. 扩展要求: ?显示各员工的姓名和他的上级领导姓名. 主讲 韩顺平 玩转oracle 10g实战教程 oracle表复杂查询—子查询 ■ 什么是子查询 子查询是指嵌入在其它sql语句中的select语句,也叫嵌套查询 ■ 单行子查询 单行子查询是指只返回一行数据的子查询语句 请思考:如何显示与SMITH同一部门的所有员工? ■ 多行子查询 多行子查询指返回多行数据的子查询 请思考:如何查询和部门10的工作相同的雇员的名字、岗位、工资、部门号 主讲 韩顺平 玩转oracle 10g实战教程 oracle表复杂查询—子查询 ■ 在多行子查询中使用all操作符 请思考:如何显示工资比部门30的所有员工的工资高的员工的姓名、工资和部门号 select ename,sal,deptno from emp where salall (select sal from emp where deptno=30); 扩展要求:大家想想还有没有别的查询方法. Select ename,sal,deptno from emp where sal(select max(sal) from emp where deptno=30); 主讲 韩顺平 玩转oracle 10g实战教程 oracle表复杂查询—子查询 ■ 在多在多行子查询中使用any操作符 请思考:如何显示工资比部门30的任意一个员工的工资高的员工的姓名、工资和部门号 扩展要求: 大家想想还有没有别的查询方法. 主讲 韩顺平 玩转oracle 10g实战教程 oracle表复杂查询—子查询 ■ 多列子查询 单行子查询是指子查询只返回单列、单行数据,多行子查询是指返回单列多行数据,都是针对单列

文档评论(0)

zilaiye + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档