I am trying to find the best way to filter out rows by using conditions based on a joined table. As an example I am joining the employees and salary grade table based on the salary grade for each employee. Then I want to show only the employees that have the same grade as a certain employee (Blake). I used the following code: 

```
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

```

Is there a more optimal way to write the query?