Vivek,
È possibile utilizzare l'SQL dinamico per creare l'istruzione INSERT all'interno di una funzione o procedura PL/SQL. In questo modo potresti utilizzare la variabile "grado" che hai già recuperato.
Qualcosa come:
DECLARE
degree varchar2(1);
BEGIN
select value-2
INTO degree
from v$parameter
where name='cpu_count';
EXECUTE IMMEDIATE('INSERT /*+ APPEND PARALLEL (tst, '||degree||') */ '||
' INTO test_table tst ( '||
' ************** '||
' ************** '||
' ************** '||
' ) '||
'SELECT /*+ PARALLEL (a, '||degree||') */ '||
' DISTINCT '||
' ************** '||
' ************** '||
' ************** '||
' FROM src_table a');
END;