列 TVL_CD_LIST を含む TVL_DETAIL というテーブルがあります。TVL_CD_LIST 列には 3 つのレコードが含まれています。
TVL_CD_LIST:
M1180_Z6827
K5900_Z6828
I2510
値のみを返すために次のコードを使用しました(アンダースコアを除く):
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 (アンダースコアを含まない元の値) のみが返されます。
私は何を間違っていますか?どんな助けでも大歓迎です。ありがとう!