Determine if a resultset exists quickly
If you need just to check existence I'd go with 
SELECT 1 FROM DUAL WHERE EXISTS (SELECT NULL FROM [your query]) ... 

For "top-n" queries there are quite a few alternatives - https://oracle-base.com/articles/misc/top-n-queries . Note, some of them may have side effects ; for instance, where rownum &lt; :value can change optimizer mode to FIRST_ROWS.