Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle 查询帮助_Oracle_Select - Fatal编程技术网

Oracle 查询帮助

Oracle 查询帮助,oracle,select,Oracle,Select,如何在Oracle的EMP表中列出拥有两名职员或三名经理的部门?有多种方法可以获得此结果。这里有一个解决方案: SQL> select deptno 2 , mgr_count 3 , clerk_count 4 from 5 ( select deptno 6 , sum ( case when job = 'MANAGER' then 1 else 0 end ) as mgr_coun

如何在Oracle的EMP表中列出拥有两名职员或三名经理的部门?

有多种方法可以获得此结果。这里有一个解决方案:

SQL> select deptno
  2         , mgr_count
  3         , clerk_count
  4  from
  5        ( select deptno
  6                 , sum ( case when job = 'MANAGER' then 1 else 0 end ) as mgr_count
  7                 , sum ( case when job = 'CLERK' then 1 else 0 end ) as clerk_count
  8          from emp
  9          group by deptno )
 10  where mgr_count > 3
 11  or clerk_count > 2
 12  /

    DEPTNO  MGR_COUNT CLERK_COUNT
---------- ---------- -----------
        30          3           5
        50          4           0

SQL>
这里有一个稍微不同的方法:

SQL> select * from
  2      ( select deptno
  3         , job
  4         , count(*) as cnt
  5      from emp
  6      group by deptno, job
  7      )
  8  where ( job = 'MANAGER' and cnt >= 3 )
  9  or ( job = 'CLERK' and cnt >= 2 )
 10  /

    DEPTNO JOB              CNT
---------- --------- ----------
        20 CLERK              2
        30 CLERK              5
        30 MANAGER            3
        50 MANAGER            4

SQL>

当你问这样的问题时,你永远不会得到答案。这是你第一次上网吗@卡伦布罗迪-你错了吗are@APC的确你必须承认,这些问题有点稀松平常,而且还带有“请帮忙”的语气最后,我没有帮他们任何忙。@calumbrodie-这个问题在我把它转为子问题之前就可以理解了。除此之外,我们应该对新来的人表示不满。@APC我没有说这是不可理解的。我说这是一个格式不好的问题。我不是唯一一个这么想的人。我甚至发布了一个友好的链接,让他们阅读如何改进他们的问题。也许这种讽刺有点不必要。