select d.plan_hash_value plan_hash_value, d.execnt execnt, a.hash_value hash_value, a.sql_text sql_text from v$sqltext a, (select plan_hash_value, hash_value, execnt from (select c.plan_hash_value, b.hash_value, c.execnt, rank() over(partition by c.plan_hash_value order by b.hash_value) as hashrank from v$sql b, (select count(*) as execnt, plan_hash_value from v$sql where plan_hash_value <> 0 group by plan_hash_value having count(*) > 10 order by count(*) desc) c where b.plan_hash_value = c.plan_hash_value group by c.plan_hash_value, b.hash_value, c.execnt) where hashrank <= 3) d where a.hash_value = d.hash_value order by d.execnt desc, a.hash_value, a.piece