oracle安装参照: Oracle数据库之安装教程

Oracle数据库总结:

Oracle数据库之基本查询
Oracle数据库之单行函数
Oracle数据库之多行函数
Oracle数据库之多表查询
SQL> --等值连接
SQL> --查询员工信息:员工号 姓名 月薪 部门名称

SQL> select e.empno,e.ename,e.sal,d.dname
2 from emp e,dept d
3 where e.deptno=d.deptno;

  EMPNO ENAME             SAL DNAME
---------- ---------- ---------- --------------                                                     7369 SMITH             800 RESEARCH                                                           7499 ALLEN            1600 SALES                                                              7521 WARD             1250 SALES                                                              7566 JONES            2975 RESEARCH                                                           7654 MARTIN           1250 SALES                                                              7698 BLAKE            2850 SALES                                                              7782 CLARK            2450 ACCOUNTING                                                         7788 SCOTT            3000 RESEARCH                                                           7839 KING             5000 ACCOUNTING                                                         7844 TURNER           1500 SALES                                                              7876 ADAMS            1100 RESEARCH                                                           EMPNO ENAME             SAL DNAME
---------- ---------- ---------- --------------                                                     7900 JAMES             950 SALES                                                              7902 FORD             3000 RESEARCH                                                           7934 MILLER           1300 ACCOUNTING

SQL> --不等值连接
SQL> --查询员工信息:员工号 姓名 月薪 工资级别
SQL> select * from salgrade;

 ***GRADE      LOSAL      HISAL

     1        700       1200                                                                    2       1201       1400                                                                    3       1401       2000                                                                    4       2001       3000                                                                    5       3001       9999***

SQL> select e.empno,e.ename,e.sal,s.grade
2 from emp e,salgrade s
3 where e.sal between s.losal and s.hisal;

 ***EMPNO ENAME             SAL      GRADE

  7369 SMITH             800          1                                                         7900 JAMES             950          1                                                         7876 ADAMS            1100          1                                                         7521 WARD             1250          2                                                         7654 MARTIN           1250          2                                                         7934 MILLER           1300          2                                                         7844 TURNER           1500          3                                                         7499 ALLEN            1600          3                                                         7782 CLARK            2450          4                                                         7698 BLAKE            2850          4                                                         7566 JONES            2975          4                                                         EMPNO ENAME             SAL      GRADE

  7788 SCOTT            3000          4                                                         7902 FORD             3000          4                                                         7839 KING             5000          5***

SQL> --外连接
SQL> --按部门统计员工人数:部门号 部门名称 人数
SQL> select d.deptno 部门号,d.dname 部门名称,count(e.empno) 人数
2 from emp e,dept d
3 where e.deptno=d.deptno
4 group by d.deptno,d.dname;

***部门号 部门名称             人数

    10 ACCOUNTING              3                                                                20 RESEARCH                5                                                                30 SALES                   6

SQL> select * from dept;
DEPTNO DNAME LOC


    10 ACCOUNTING     NEW YORK                                                                  20 RESEARCH       DALLAS                                                                    30 SALES          CHICAGO                                                                   40 OPERATIONS     BOSTON***

SQL> /
SQL> 外连接:某些不成立的记录,通过外连接依然可以包含在最后的结果中
SQL> 左外连接:当where e.deptno=d.deptno不成立的时候,等号左边的表任然包含在最后的结果中
SQL> 写法:where e.deptno=d.deptno(+)
SQL> 右外连接:当where e.deptno=d.deptno不成立的时候,等号右边的表任然包含在最后的结果中
SQL> 写法: where e.deptno(+)=d.deptno
SQL> /

SQL> select d.deptno 部门号,d.dname 部门名称,count(e.empno) 人数
2 from emp e,dept d
3 where e.deptno(+)=d.deptno
4 group by d.deptno,d.dname;

    部门号 部门名称             人数
---------- -------------- ----------                                                                10 ACCOUNTING              3                                                                40 OPERATIONS              0                                                                20 RESEARCH                5                                                                30 SALES                   6

SQL> --自连接
SQL> --查询员工信息: 员工的名字 老板的名字
SQL> --自连接:通过表的别名,将同一张表视为多张表
SQL> select e.ename 员工的名字,b.ename 老板名字
2 from emp e,emp b
3 where e.mgr=b.empno;

员工的名字 老板名字
---------- ----------
FORD       JONES
SCOTT      JONES
JAMES      BLAKE
TURNER     BLAKE
MARTIN     BLAKE
WARD       BLAKE
ALLEN      BLAKE
MILLER     CLARK
ADAMS      SCOTT
CLARK      KING
BLAKE      KING                                                                                                                                                                                         员工的名字 老板名字
---------- ----------
JONES      KING
SMITH      FORD

SQL> --层次查询
SQL> select level,empno,ename,mgr
2 from emp
3 connect by prior empno=mgr
4 start with mgr is null
5 order by 1;

     LEVEL      EMPNO ENAME             MGR
---------- ---------- ---------- ----------                                                                                                                                                             1       7839 KING                                                                                                                                                                              2       7566 JONES            7839                                                                                                                                                             2       7698 BLAKE            7839                                                                                                                                                             2       7782 CLARK            7839                                                                                                                                                             3       7902 FORD             7566                                                                                                                                                             3       7521 WARD             7698                                                                                                                                                             3       7900 JAMES            7698                                                                                                                                                             3       7934 MILLER           7782                                                                                                                                                             3       7499 ALLEN            7698                                                                                                                                                             3       7788 SCOTT            7566                                                                                                                                                             3       7654 MARTIN           7698                                                                                                                                                             LEVEL      EMPNO ENAME             MGR
---------- ---------- ---------- ----------                                                                                                                                                             3       7844 TURNER           7698                                                                                                                                                             4       7876 ADAMS            7788                                                                                                                                                             4       7369 SMITH            7902

更多可以参看

Oracle数据库总结:

Oracle数据库之集合运算
Oracle数据库之数据处理
Oracle数据库之建表和管理表
Oracle数据库之对象视图、索引、序列、同义词

Oracle数据库之多表查询相关推荐

  1. oracle数据库查询需步骤,PLSQL操作Oracle数据库之单表查询SQL语句 看完你就知道了...

    Orcale数据库作为商业级的大型关系型数据库管理系统,以其较高的安全性和强大的可移植性赢得了市场的广泛认可,而PLSQL作为操作Oracle的编程语言的最佳选择,掌握其编程原理及基本的sql操作是掌 ...

  2. oracle数据库同时实现联表查询和分页查询(未明确定义列)

    ps:只是记录新手小白的脱坑之路,大佬勿喷 今天在做前端数据查询的时候,在实现联表查询的同时进行分页查询遇到了令人头秃的问题,分页查询的sql语句是这样的 select * from (select ...

  3. 如何从Oracle数据库中的表中获取列名(字段名)列表?

    如何从Oracle数据库中的表中获取列名(字段名)列表? 目录 如何从Oracle数据库中的表中获取列名(字段名)列表? #示例一 #示例二 示例三: #示例一 可以获取: table_name:表名 ...

  4. oracle批量把小写转换成大写,oracle数据库批量将表名小写转大写

    ORACLE10g数据库,Sqlserver通过DTS导出数据到ORACLE后.查询表数据时输入: select * from "表名" ; 查询数据执行正常. 如果输入:sele ...

  5. 用ado把excel数据写入oracle,如何将excel表格数据导入到oracle数据库对应的表中?!oracle导出excel文件...

    如何把excel里的表导入到oracle里 使用第三方工具吧,toad之类的 一个excel表格中有多个sheet,如何将其导入oracle数据库 户和要用DBA 最简单得建用户: create us ...

  6. Oracle数据库中的级联查询、级联删除、级联更新操作教程

    这里整理了Oracle中的三种级联操作,其中Oracle定义外健的时候可以定义级联删除,但是没有级联修改的语法,当然可以用触发器实现,下面我们详细来看Oracle数据库中的级联查询.级联删除.级联更新 ...

  7. oracle数据库表excel文件位置,“如何将excel表格数据导入到oracle数据库对应的表中?“数据库文件导入excel表格数据库中...

    如何实现Excel表格自动导入到数据库 库?是什么数据库?sql?access?mysql?我以sql2008为例子 1.打开SQL Server Management Studio-任务-数据 2. ...

  8. oracle表中放入word,“如何将excel表格数据导入到oracle数据库对应的表中?“将excel表格导入word...

    如何将excel表格数据导入到oracle数据库对应的表中? 敢问楼主,表A几列,表B存在几列,表C存在几列 常规方法(表中列和excel中列) PLSQL 中 : select * from A u ...

  9. oracle数据库解决system表空间已爆满的问题

    oracle数据库解决system表空间已爆满的问题 参考文章: (1)oracle数据库解决system表空间已爆满的问题 (2)https://www.cnblogs.com/chxmtl/p/1 ...

最新文章

  1. 【转载】Pytorch在加载模型参数时指定设备
  2. 计算各种形钢的重量用什么软件_造价常用工具不会用,30个常用工程算量工具免费送,速来领取收藏...
  3. sparkSQL1.1入门之二:sparkSQL执行架构
  4. 简单超级组计划 打造强悍手臂
  5. TypeScript 入门
  6. 你这么爱打游戏,怎么不去做游戏测试呢?
  7. IBASE category 03 parent relationship remove
  8. docker 安装nginx_docker安装nginx搭建简单文件共享服务
  9. mysql datetime 后面带了很多0_面试官:MySQL 表设计要注意什么?
  10. 《魔兽世界插件》教程---21点扑克游戏 Blackjack
  11. adb下载安装教程(已安装Android studio)
  12. 重庆主城区首套房个人所得税退还攻略
  13. 使用HDMI转DVI线组双屏
  14. SCI收录的期刊查询
  15. 伪静态与重定向--RewriteBase
  16. guava深入理解(3)-字符串,实用方法,函数式编程
  17. 号称最为简明实用的Django上手教程(下)
  18. JAVA毕业设计vue健康餐饮管理系统设计与实现计算机源码+lw文档+系统+调试部署+数据库
  19. netgen.5.0.0下载地址与Windows下编译方法
  20. nginx 配置后缀

热门文章

  1. 共享库中的位置无关代码(PIC)
  2. VC调试信息输出 TRACE宏
  3. 关于STM32串口空闲中断的问题
  4. C++(一)——存储持续性、作用域、链接性
  5. 异常:javax.servlet.jsp.PageContext cannot be resolved to a type
  6. 关于LookupError: No installed app with label ‘admin‘.报错的解决
  7. MySQL基本操作(表,字段)
  8. 用Go语言建立一个简单的区块链part6(2):交易(2)
  9. CFileDialog 打开多个目录下的多个文件
  10. FileInputStream和FileOutputStream实现任何文件类型的拷贝