select ename,sal from emp join (select max(sal) max_sal,deptno from emp group by deptno) t
on (emp.sal = t.max_sal and emp.deptno = t.deptno);
这条语句中的jion该怎么理解 我查了下没发现这种单独一个join的写法
on (emp.sal = t.max_sal and emp.deptno = t.deptno);
这条语句中的jion该怎么理解 我查了下没发现这种单独一个join的写法
这里的join链接的是一个子查询而已.
可以转化成如下方式:
SELECT ENAME, SAL
FROM EMP
WHERE (SAL, DEPTNO) IN
(SELECT MAX(SAL) MAX_SAL, DEPTNO FROM EMP GROUP BY DEPTNO);
楼主需要学习一下基本的 sql 语法了。
select A.name,B.name from a A join b B on (A.id = B.id)