我有一个场景需要列出第二大部门的所有员工。(1名员工仅属于一个部门)。 我可以使用以下子查询获得结果:
SELECT empno,ename,deptno FROM emp WHERE deptno = ( SELECT deptno FROM emp GROUP BY deptno ORDER BY COUNT(*) DESC LIMIT 1,1 )
但是,如果我想使用连接得到相同的结果呢?我该怎么做?
在MySQL中,可以使用 JOIN 在一 Derived Table :
JOIN
SELECT empno,ename,deptno FROM emp AS t1 JOIN (SELECT t2.deptno FROM emp AS t2 GROUP BY t2.deptno ORDER BY COUNT(*) DESC LIMIT 1,1 ) AS t3 ON t3.deptno = t1.deptno