Здравствуйте.
Сегодня пришлось решить задачу регуляркой на PL-SQL
нужно было к примеру из
select 'SESSION_WAIT' as name, (select UM.MON_SESSION_WAIT from dual) as value from DUAL
вытащить SESSION_WAIT
решил таким образом
SELECT
SUBSTR(REGEXP_SUBSTR('select ''SESSION_WAIT'' as name, (select UM.MON_SESSION_WAIT from dual) as value from DUAL', '''[^'']+'''),2,LENGTH(REGEXP_SUBSTR('select ''SESSION_WAIT'' as name, (select UM.MON_SESSION_WAIT from dual) as value from DUAL', '''[^'']+'''))-2)
FROM DUAL
но чувствую, есть вариант лучше...
Как лучше оптимизировать это решение?