2013-04-16 2 views
0

У меня проблема с определением значения поля clob.Oracle clob field val

(я не могу создавать функции) это было бы легко.

Так предполагая поле CLOB:

key1 + знач1; key2 + val2; ключ3 + val3; Key4 + val4

Здесь я хотел бы получить значение Key3 например

Я пытался чтобы архивировать его с помощью dbms_lob.substr & dbms_lob.instr без успеха.

Может ли кто-нибудь помочь мне здесь?

Порядок значений трости быть разными (key2 + val2; key1 + знач1; Key4 + val4; ключ3 + val3)

Спасибо большое,

+0

Regexp_ * функции работают с clob так же, как с varchar2. –

+0

Вы не должны хранить такие данные. Прочитайте нормализацию. –

ответ

1
regexp_replace(clob_column, '^(.*?;)*key3\+([^;]*).*$', '\2') 

fiddle

+0

Awsome Большое спасибо! – user1814129

Смежные вопросы