select max(sal),deptno,ename from emp group by deptno order by max(sal);哪里错了?

如题所述

select max(sal),deptno,ename from emp group by deptno,ename order by max(sal);
含有group by 的语句,select 的字段除了group by中出现的,其余必须是聚合函数,类似max这些确定唯一一条的
温馨提示:内容为网友见解,仅供参考
无其他回答

查询出每个部门中工资最高的职工怎么查?
excel中查询出每个部门中工资最高的职工的公式是select empno, empname where sal in (select max(sal) from emp group by deptno)。sql语句公式如下:其中,empno是员工编号,同时也是该表的主键,ename是员工姓名,sal是员工工资,deptno是员工部门。如何找出每个部门的最高工资的员工信息呢?常用的方...

Oracle中求各部门那些人薪水最高,输出姓名、薪水、部门编号?
一样可以实现 select e.ename,e.sal,e.deptno from emp e join --注意以后养成习惯,加上字段的前缀,也就是表的别名+.+字段名或字段别名(select max(sal) maxsal,deptno from emp group by deptno) t--你之前deptno写成了deptonon(e.sal=t.maxsal and e.deptno=t.deptno);--这个地方把f...

想要弄懂GROUP BY看这一篇就够了
SELECT deptno, sum(sal) FROM emp GROUP BY deptno HAVING sum(sal) > 9000 ORDER BY sum(sal);最后,了解关键字的执行顺序很重要:先 FROM,然后 WHERE,接着 GROUP BY,HAVING 紧随其后,最后是 SELECT 列和排序、限制等。通过这些步骤,你将更深入地掌握 GROUP BY 的使用。

oracle 中group by 的用法问题
select max(sal),job emp group by job;(注意max(sal),job的job并非一定要出现,但有意义)查询语句的select 和group by ,having 子句是聚组函数唯一出现的地方,在where 子句中不能使用聚组函数。select deptno,sum(sal) from emp where sal>1200 group by deptno having sum(sal)>8500 order b...

第七章 高级查询
group by deptno;select emp.deptno,dname,avg(sal)from emp,deptwhere emp.deptno=dept.deptnogroup by emp.deptno;select emp.deptno,dname,avg(sal)from emp,deptwhere emp.deptno=dept.deptno and avg(sal)>2000group by emp.deptno;上面的写法是错误的...

select * from emp
首先select ename from emp group by ename having count(*)>1是查询的名字出现次数大于1次的人的姓名,然后这句select * from emp where ename in()是指在上面名字内的所有字段信息,in的用法是指在什么范围里,后面的查询结果一般是结果集 ...

求助:oracle分组函数详解
在带有group by 子句的查询语句中,在select 列表中指定的列要么是group by 子句中指定的列,要么包含聚组函数 select max(sal),job emp group by job;(注意max(sal),job的job并非一定要出现,但有意义)询每个部门的每种职位的雇员数 select deptno,job,count(*) from emp group by deptno,job ...

sql含义求解
查询sal最大的ename 这样写效率很低 select distinct e1.sal from emp e1 join emp e2 on e1.sal<e2.sal是查询出所有不是最大的记录 e1.sal<e2.sal 最大的那个个永远不会取到 然后not in就是取最大的 可以用分组解决 select ename,max(sal) from emp group by ename ...

SELECT MAX ... ORA-00937
一般来说,如果出现上述“ORA-00937: 非单组分组函数”的错误是因为select 列表项中除了包含聚合函数外,还包含了表的某些列,那么你将必须使用group by语句,否则语法通不过。如:select deptno,job,avg(sal) from emp group by deptno,job;(正确)select deptno,job,avg(sal) from emp(错误)。...

SQL中SELECT中的FROM子句可否带另外一个SELECT
select ename,deptno,sal from emp where deptno=(select deptno from dept where loc='NEW YORK');例2:select子查询出现在from子句中 SELECT ename,job,sal,rownum FROM (SELECT ename,job,sal FROM EMP ORDER BY sal);例3:select子查询出现在select list中,作为一个字段值来返回 SELECT ...

相似回答