select * from (select row_number() over(partition by a.STATISTIC# order by a.value desc) size_rank, a.sid, b.name, a.value from v$sesstat a,v$statname b,v$session c where c.STATUS='ACTIVE' and c.USERNAME is not null and a.sid=c.sid and a.STATISTIC#=b.STATISTIC# order by a.value desc) where size_rank <= 3 and name like '%&NAME%' and sid like '%&SID%' order by name, size_rank;