oracle中 为什么不能用 select ename,max(sal) from emp;

[复制链接]
查看11 | 回复4 | 2011-11-3 19:39:15 | 显示全部楼层 |阅读模式
不能,因为max(sal) 算出来的是一行,而ename查出的是多行,你这个错误就是最常见的一行对多行,要想在select ename,max(sal) from emp;基础上更改,可以改为:select ename,max(sal) from emp group by ename;...
回复

使用道具 举报

千问 | 2011-11-3 19:39:15 | 显示全部楼层
把ename去掉select max(sal) from emp;或者select ename,max(sal) from emp group by ename;两个在一起用,在编译器来看有二义性...
回复

使用道具 举报

千问 | 2011-11-3 19:39:15 | 显示全部楼层
select ename,max(sal) from emp group by ename;这样OK...
回复

使用道具 举报

千问 | 2011-11-3 19:39:15 | 显示全部楼层
SQL> select ename,deptno,sal from emp eo2where sal=(select max(sal) from emp ei where ei.deptno=eo.deptno);...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行