私は、TVL_DETAILというテーブルにTVL_CD_LIST列が含まれています。
TVL_CD_LIST:
M1180_Z6827
K5900_Z6828
I2510Oracle 10gでREGEXP_SUPSTRを使用して区切り値を解析する
私は(そうアンダースコアを除く)のみの値を返すための試みで、次のコードを使用しました:
列TVL_CD_LISTは、3つのレコードが含まれていますSELECT
TVL_CD_LIST
FROM TVL_DETAIL
WHERE TVL_CD_LIST IN (SELECT regexp_substr(TVL_CD_LIST,'[^_]+', 1, level) FROM DUAL
CONNECT BY regexp_substr(TVL_CD_LIST,'[^_]+', 1, level) IS NOT NULL)
別の行に返されると予想されたのは、
M1180
Z6827
K5900
Z6828
I2510
それだけ(下線を含まない元の値である)I2510を返します。
私は間違っていますか?どんな助けもありがとうございます。ありがとう!
おかげでGary_Wは...そう、私は得るこのエラー:ORA-00939:機能 – user3666552
のためにあまりにも多くの引数を使って、慎重にあなたの構文をチェックそれは私のために働いて見ることができます。 –