我想通過使用基於連接表的條件來篩選出行的最佳方法。作爲一個例子,我根據每位員工的工資等級加入員工和工資等級表。然後,我只想顯示與某位員工(布萊克)具有相同等級的員工。我使用下面的代碼:在連接表上使用WHERE子句
SELECT e.ename, e.sal, sg.grade
FROM emp e JOIN salgrade sg
ON(e.sal BETWEEN sg.losal AND sg.hisal)
WHERE sg.grade = (SELECT sg.grade FROM emp e JOIN salgrade sg ON(e.sal BETWEEN sg.losal AND sg.hisal) WHERE e.ename = 'BLAKE')
ORDER BY e.sal DESC
是否有更優化的方式來編寫查詢?
什麼數據庫系統,您使用的? SQL Server,Oracle,MySQL? –
我使用Oracle * –
我們能否看到來自兩個表的一些示例數據? – VDK