悬赏100分求答案 在线等待ING。。。10分钟内回答出来的追加100分

来源:百度知道 编辑:UC知道 时间:2024/07/08 20:02:05
两张表 第一张表是 emp 第二张表是 dept
第一张表 emp如下:
EMPNO ENAME DEPTNO
1 7369 SMITH 20
2 7499 ALLEN 30
3 7521 WARD 30
4 7566 JONES 20
5 7654 MARTIN 30
6 7698 BLAKE 30
7 7782 CLARK 10
8 7788 SCOTT 20
9 7839 KING 10
10 7844 TURNER 30
11 7876 ADAMS 20
12 7900 JAMES 30
13 7902 FORD 20
14 7934 MILLER 10

第二张表dept如下

DEPTNO DNAME LOC
1 10 ACCOUNTING NEW YORK
2 20 RESEARCH DALLAS
3 30 SALES CHICAGO
4 40 OPERATIONS BOSTON

问题是:从dept表中所有部门的详细信息以及在emp表中对应的人数
也就是 列出所有部门的详细信息和部门人数
在线等。。。。。
emp表里的 empno是员工号 ename 是名字 deptno 是所在的部门号
dept表里的 deptno 是部门号 dname 是部门名字 loc 是所在的位置。。。

用oracle 语言。。。。。。。。。。。。。尽量用oracle 虽然和sql 差不多 但是请用oracle

1楼不对 。。缺少表达式。。。还有后来者么?
2楼也不对 报错:不是group by 表达式。。。。继续。。还有后来者么?

select b.DEPTNO, b.DNAME, b.LOC,count(*) count from emp a,dept b
where a.DEPTNO=b.DEPTNO group by b.DEPTNO, b.DNAME, b.LOC

用手机写的,不能调试不好意思。 select emp.count(*),dept.deptno,dept.dname,dept.loc from dept,emp where emp.deptno=dept.deptno group by deptno deptno 大体的应该是这样,希望对您有帮助

select a.DEPTNO,DNAME,LOC,count(distinct ENAME) 人数
from dept a
left join emp b
on a.DEPTNO=b.DEPTNO
group by a.DNAME