Prova questo:
SELECT SID, SERIAL#
FROM V$SESSION
WHERE AUDSID = Sys_Context('USERENV', 'SESSIONID');
Poiché sei interessato alla sessione corrente, la sessione corrente deve essere sull'istanza locale (per definizione), quindi usa V$SESSION
invece di GV$SESSION
. Inoltre, tutto ciò di cui hai bisogno è AUDSID
per identificare in modo univoco la tua sessione.
Se hai qualche motivo davvero è necessario utilizzare GV$SESSION
(non riesco a immaginare perché sarebbe), potresti invece farlo:
SELECT SID, SERIAL#
FROM GV$SESSION
WHERE AUDSID = Sys_Context('USERENV', 'SESSIONID')
AND INST_ID = USERENV('Instance');
Inoltre, un modo alternativo per ottenere il SID
della sessione corrente è:
select sid from v$mystat where rownum=1;
Spero di esserti stato d'aiuto.