oracle多表连接.doc_第1页
oracle多表连接.doc_第2页
oracle多表连接.doc_第3页
oracle多表连接.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

练习题 1. 写一个查询显示所有雇员的 last name、department number、and department name。 select e.ename,d.deptno,d.dname from emp e,dept d where e.deptno=d.deptno; 2. 创建一个在部门 80 中的所有工作岗位的唯一列表,在输出中包括部门的地点。select distinct d.dname,d.loc,e.deptno from emp e,dept d where e.deptno=10 3. 写一个查询显示所有有佣金的雇员的 last name、department name、location ID 和城市。 select e.ename,d.dname,d.loc from emp e,dept d where e.deptno=d.deptno and m is not null 4. 显示所有在其 last names 中有一个小写 a 的雇员的 last name 和 department name。select e.ename,d.dname from emp e,dept d where e.ename like %A%.显示雇员的 last name 和 employee number 连同他们的经理的 last name 和 manager number。列标签分别为 Employee、Emp#、Manager 和 Mgr#。select e.ename Employee,e.empno Emp#,m.ename Manager,m.empno Mgr# from emp e,emp m where e.mgr=m.empno 6.修改 上题显示所有雇员包括 King,他没有经理。用雇员号排序结果。 select e.ename Employee,e.empno Emp#,m.ename Manager,m.empno Mgr# from emp e,emp m where e.mgr=m8.empno(+) order by Emp# 8.创建一个查询显示所有与被指定雇员工作在同一部门的雇员 (同事) 的 last names、department numbers。给每列一个适当的标签。 select m.ename,d.deptno from emp e,emp m,dept d where e.ename=CLARK and e.deptno=m.deptno and m.enamee.ename and e.deptno=d.deptno 9.显示 JOB_GRADES 表的结构。创建一个查询显示所有雇员的 name、job、department name、salary 和 grade。 -Describe JOB_GRADESselect e.ename,e.job,d.dname,e.sal,s.grade from emp e,dept d,salgrade s where e.deptno=d.deptno and e.sal between s.losal and s.hisal 10.创建一个查询显示那些在雇员 Davies 之后入本公司工作的雇员的name 和 hire date。 select e.ename,e.hiredate from emp e,emp w where w.ename=CLARK and e.hiredatew.hiredate 11.显示所有雇员的 names 和 hire dates,他们在他们的经理之前进入本公司,连同他们的经理的名字和受雇日期一起显示。列标签分别为 Employee、Emp Hired、Manager 和 Mgr Hired。 select e.ename Employee,e.hiredate Emp Hired,m.ename Manager,m.hiredate Mgr Hired from emp e,emp m where e.mgr=m.empnoand e.hiredatem.hiredate非等值连接select * from user_tablesselect e.ename,e.sal,s.grade from emp e,salgrade s where e.sal between s.losal and s.hisal左外连接select d.deptno,d.dname,e.ename from dept d left outer join emp e on (d.deptno=e.deptno)select e.deptno,d.dname,e.ename from emp e left outer join dept d on (d.deptno=e.deptno)select w.ename,m.ename from emp w,emp m where w.mgr=m.empnoselect w.empno,m.empno,w.ename,m.ename from emp w,emp m where w.mgr=m.empno都是ORACLE中自带的 在其他数据库里可能没有 using 公共列 不用表别名 公共列 列名相同 不加任何的表前缀或者表别名natural join select * from emp natural join deptjoin usingselect e.ename,d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论