MYSQL «Список сотрудников второго по величине отдела» не по подзапросу - PullRequest
0 голосов
/ 02 октября 2018

У меня есть один сценарий, в котором мне нужно перечислить всех сотрудников второго по величине отдела.(1 сотрудник принадлежит только одному отделу).Я могу получить результаты, используя следующий подзапрос:

SELECT empno,ename,deptno 
FROM emp 
WHERE deptno = (
                 SELECT deptno 
                 FROM emp 
                 GROUP BY deptno 
                 ORDER BY COUNT(*) DESC LIMIT 1,1
               )

Но что, если я хочу получить тот же результат, используя JOIN?Как я могу это сделать?

1 Ответ

0 голосов
/ 02 октября 2018

В MySQL вы можете сделать следующее, используя 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 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...