我在 Oracle pl/sql 中使用以下代码(版本:Oracle Database 11g Release 11.2.0.1.0)
select regexp_substr('A~B~C','[^~]+',1,level) output
from dual
connect by level <= length(regexp_replace('A~B~C','[^~]+')) + 1
这给出了以下结果
row1: A
row2: B
row3: C
这是完美的,但是我应该给一个空值,即:
select regexp_substr('~B~C','[^~]+',1,level) output
from dual
connect by level <= length(regexp_replace('~B~C','[^~]+')) + 1
我期望并想要以下内容:
row1: <null>
row2: B
row3: C
但得到了这个输出:
row1: B
row2: C
row3: null
我做错了pl/sql代码吗?我怎样才能让它正常工作?