From question:
This statement appears inefficient ...
How do you know it is inefficient?
Do you have execution plan?
Did you measure execution times?
Are you sure it uses index?
You commented Peter Lang's answer: ... not sure if any performance gain here - is based on what?
Basic thing you should know about query execution:
- Most modern RDBMS-s have query optimizer that analyzes your SQL and determines optimal execution plan.
Your feeling that some query is "bad" doesn't mean anything. You need to check execution plan and then you see if there is anything you can do to improve performance.
For MySql, see article: 7.2.1. Optimizing Queries with EXPLAIN
You could also run SQL from answers and compare execution plans to see if any of proposed solution gives better performance.