が動作していないように、私は、単純なSQLの部分を持っている:期待通りREGEXP_SUBSTRだから
:アイデアは値の存在があるrandomcol列に存在するパイプで区切られた値を取得することですselect
REGEXP_SUBSTR (randomcol, '[^|]+', 1, 2)
||'|'|| REGEXP_SUBSTR (randomcol, '[^|]+', 1, 3)
||'|'|| REGEXP_SUBSTR (randomcol, '[^|]+', 1, 4)
from table1 where ADDTL_DETAIL_INFO is not null and module_key='01-07-2016 00:00:00/2212/ 1';
~custom|HELLO1||HELLO3
したがって、HELLO1、空白(2番目のパイプと3番目のパイプの間に値がないため)、HELLO3などの値が必要です。
しかし、私は上記のクエリを実行したときには、として返します。
HELLO1|HELLO3|
と白のスペースがなくなっています。私はこの空白が必要です。だから私はここで間違って何をしていますか?
あなたは間違ったことはしていませんが、Oracleは - 空の文字列をnullと同じように扱うことによってです。遠くの将来に、Oracleは廃止されるか、またはこれを修正します(いずれか早い方が先になる)。 – mathguy