Jag misstänker att du bara skulle vilja ta några kolumner från V$SESSION och SQL-satsen från V$SQL. Förutsatt att du vill utesluta de bakgrundsprocesser som Oracle själv kör
SELECT sess.process, sess.status, sess.username, sess.schemaname, sql.sql_text
FROM v$session sess,
v$sql sql
WHERE sql.sql_id(+) = sess.sql_id
AND sess.type = 'USER'
Den yttre anslutningen är för att hantera de sessioner som för närvarande inte är aktiva, förutsatt att du vill ha dem. Du kan också hämta kolumnen sql_fulltext från V$SQL som kommer att ha den fullständiga SQL-satsen snarare än de första 1000 tecknen, men det är en CLOB och så troligen lite mer komplicerad att hantera.
Realistiskt sett vill du förmodligen titta på allt som är tillgängligt i V$SESSION eftersom det är troligt att du kan få mycket mer information än vad SP_WHO tillhandahåller.