zoukankan      html  css  js  c++  java
  • Oracle PL/SQL块 多表查询(emp员工表、dept部门表、salgrade工资等级表)

    范例: 查询每个员工的编号,姓名,职位,工资,工资等级,部门名称
       ●确定要使用的数据表
         |- emp表:员工的编号、姓名、职位、工资
         |- salgrade表:工资等级
         |- dept表:部门名称
       ●确定已知的关联字段
         |- emp表与salgrade表: emp.sal BETWEEN salgrade.losal AND salgrade.hisal
         |- emp表与dept表: emp.deptno=dept.deptno
         
       一般情况下如果是多个消除笛卡尔积的条件都会使用AND连接
         
    -- 第一步:查询每个员工的编号,姓名,职位,工资
    SELECT e.empno,e.ename,e.job,e.sal
    FROM emp e;
    -- 第二步:加入工资等级的查询   此时要设置WHERE 子句
    SELECT e.empno,e.ename,e.job,e.sal,s.grade
    FROM emp e,salgrade s
    WHERE e.sal BETWEEN s.losal AND s.hisal;
    -- 第三步:查询部门信息  增加dept表的查询   此时需要增加一个消除笛卡尔积的条件   与之前的条件使用AND连接
    SELECT e.empno,e.ename,e.job,e.sal,s.grade,d.dname
    FROM emp e,salgrade s,dept d
    WHERE e.sal BETWEEN s.losal AND s.hisal
    AND e.deptno=d.deptno;

    
    
  • 相关阅读:
    textarea输入限制
    MyBatis 下使用SQLite
    天气预报
    导出Excel、csv
    WDK 常用的几个函数
    Windows 内核 hello world
    内核模式下的文件操作
    Windows 内核编程初涉
    Windows 内地管理
    Windows 内核 同步处理
  • 原文地址:https://www.cnblogs.com/zhangmenghui/p/10828842.html
Copyright © 2011-2022 走看看