SELECT su.TABLESPACE
–,su.segtype
,SUM (su.blocks * ts.block_size) / 1024 / 1024 mb
,sp.FREE_SPACE / 1024 / 1024 free_mb
,se.SID
,se.serial#
,se.username
,se.status
,se.osuser
,se.machine
,se.program
,se.action
,sq.sql_text
FROM v$sort_usage su
,v$session se
,dba_tablespaces ts
,v$sql sq
,DBA_TEMP_FREE_SPACE sp
WHERE su.session_addr = se.saddr
AND ts.tablespace_name = su.TABLESPACE
AND ts.CONTENTS = ‘TEMPORARY’
AND ts.TABLESPACE_NAME = sp.tablespace_name(+)
AND se.sql_address = sq.address(+)
AND se.sql_hash_value = sq.hash_value(+)
GROUP BY su.TABLESPACE
,se.SID
,se.serial#
,se.username
,se.status
,se.osuser
,se.machine
,se.program
,se.action
,sq.sql_text
,sp.FREE_SPACE
ORDER BY 2 DESC