2013-04-16 67 views
0

我有一个问题获取clob字段的特定值。Oracle clob字段val

(我不能创建函数)这很容易。

因此,假设一个CLOB字段:

键1 + VAL1;键2 + VAL2; KEY3 + VAL3;键4 + VAL4

在这里,我想获得KEY3的例如

我试着用dbms_lob.substr & dbms_lob.instr取代它,但没有成功。

有人可以帮我吗?

值甘蔗的顺序是不同的(KEY2 + val2的; KEY1 + VAL1; KEY4 + VAL4; KEY3 + VAL3)

非常感谢,

+0

Regexp_ *函数与clob的工作方式与varchar2相同。 –

+0

你不应该存储那样的数据。阅读正常化。 –

回答

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

fiddle

+0

Awsome非常感谢! – user1814129