我正在嘗試顯示管理其他員工的每位員工的員工編號與他管理的人數(下表中稱爲emp)。分組時COUNT不正確?
empno ename job mgr hiredate sal comm deptno
----- ------ ---------- ---------- ---------- ------- ------- ------
7369 Smith Clerk 7902 1980-12-17 800 20
7499 Allen Salesman 7698 1981-02-20 1600 300 30
7521 Ward Salesman 7698 1981-02-22 1250 500 30
7566 Jones Manager 7839 1981-04-02 2975 20
7654 Martin Salesman 7698 1981-09-28 1250 1400 30
7698 Blake Manager 7839 1981-05-01 2850 30
7782 Clark Manager 7839 1981-06-09 2450 10
7788 Scott Analyst 7566 1982-12-09 3000 20
7839 King President 1981-11-17 5000 10
7844 Turner Salesman 7698 1981-09-08 1500 0 30
7876 Adams Clerk 7788 1983-01-12 1100 20
7900 James Clerk 7698 1983-12-03 950 30
7902 Ford Analyst 7566 1983-12-13 3000 20
7934 Miller Clerk 7782 1982-01-23 1300
任何想法,我該如何去做這件事?
我已經試過
select empno,count(mgr) from emp group by empno,mgr;
但這返回:
empno count(mgr)
---------- ----------
7369 1
7499 1
7521 1
7566 1
7654 1
7698 1
7782 1
7788 1
7839 0
7844 1
7876 1
7900 1
7902 1
7934 1
非常感謝您的幫助。
能否請您詳細闡述更多? – TechGuy
你想讓你的輸出看起來像什麼?輸出示例? –
@methuselah在原始文章中加入一個小結果片段和解釋:*結果在這裏非常重要*並且將爲更好的問題提供所有有關信息:)這也展示了'count(n)'和'COUNT(*)';有一個適當的標題/問題很容易重定向到重複/解決方案。 (向下投票只需要暫時的。) – 2012-06-12 18:03:10