我想通过使用基于连接表的条件来筛选出行的最佳方法。作为一个例子,我根据每位员工的工资等级加入员工和工资等级表。然后,我只想显示与某位员工(布莱克)具有相同等级的员工。我使用下面的代码:在连接表上使用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