oracle两表联查重复列如何去除?
新手求教,百度过了,答案都与所问不符,才来让大家看看。
问题如下:
两张表:第一张 EMP表,用到字段:empno、sal、deptno
第二张 dept表,只有两个字段:deptno/deptno
需求:查出相同部门的总工资
想要做到的视图效果: 部门名称 总工资数
问题所在:先做出一张虚拟表 将两张表通过deptno关联 将所有字段合成一张表 然后group by deptno
但是错误提示;列明未明确,据说有个可以去除重复列(不是distinct)的方法,但是百度到的都不是想要答案...(水平太菜,求指教。)
--------------------------------------------------这是我本办法出来的答案,怎么改善?
select dname,sum(sal) as b from (select emp.deptno,emp.sal,dept.dname from emp,dept where emp.deptno=dept.deptno ) nee group by dname,deptno
------解决方案--------------------不是重复列,是未明确定义列,说白了,你group by deptno的时候,系统不知道你用emp这表的,还是用dept这个表的。指定一个就行了