INSTR(ltrim(pn.pname),'REFERENCE ID=')
プレ>は 0 を返します (検索している部分文字列が見つからなかったことを示します)。そうしようとすると:
REGEXP_SUBSTR( 値, 正規表現, 0 )コード> プレ>
次のエラーが表示されます:
ORA-01428:引数 '0' は範囲外です
プレ>代わりに、以下を使用できます:
REGEXP_SUBSTR( pn.pname, 'REFERENCE ID="(\d+)"', 1, -- 最初の文字から開始 1, -- 最初の出現を検索 NULL, -- フラグなし 1 --最初のキャプチャ グループの内容を返します)
プレ>