- Вы можете сделать «самостоятельное соединение» между двумя таблицами.Во второй таблице
EMPNO
будет равно соответствующему значению MGR
. - Используйте
Where
для фильтрации случаев, когда зарплата сотрудника выше, чем у менеджера.
Попробуйте:
SELECT employee.*
FROM your_table_name AS employee
JOIN your_table_name AS manager ON manager.EMPNO = employee.MGR
WHERE employee.SAL > manager.SAL
Как @ Strawberry предлагает в комментариях , что сравнение столбцов может быть выполнено в самом условии соединения (вместо использованияWhere
).Вы также можете сделать следующее:
SELECT employee.*
FROM your_table_name AS employee
JOIN your_table_name AS manager ON manager.EMPNO = employee.MGR AND
employee.SAL > manager.SAL
Преимущество этого подхода состоит в том, что мы должны перейти от внутреннего соединения к левому соединению, изменения, необходимые для запроса, будут меньше.