を存在する場合、私はPL/SQLでの新たなんだ、とレコードがテーブルに存在する場合のようなものをチェックし、古いプログラムからのコードを手に入れたチェックするリストを区切り以前はokでしたが、アプリケーションには検証するために500行以上ありました。すべてのコードをカンマで区切って文字列を渡したいと思います。プロシージャはループして、見つからないicodeをすべて返します。どんな助けでも大歓迎です。Oracleのループは、レコードが
0
A
答えて
1
これを試してみてください:
select f1
into oretvalue
from t1
where w1 = 'w1'
and code in
(select p_code
from (select level as id,
regexp_substr(icode, '[^,]+', 1, level) as p_code
from dual
connect by regexp_substr(icode, '[^,]+', 1, level) is not null));
+0
''[^、] +''(残念なことに区切られたリストを解析するのによく見られる)のREGEXは、NULL要素がある場合には失敗し、避けるべきです。 NULLを処理する代替手段については、http://stackoverflow.com/questions/25648653/regex-to-select-nth-value-from-a-list-allowing-for-nullsを参照してください。 –
+0
このリンクを共有すると、正規表現のより良い説明が得られます。http://stackoverflow.com/a/31464699/2543416 –
関連する問題
- 1. 再帰レコードoracle
- 2. FORループ内のOracle FORループ
- 3. Oracleユーザー定義レコード
- 4. oracleのレコードの複製
- 5. oracle SQLの連続レコード
- 6. Insertステートメント(Oracle)のレコード数
- 7. Oracleのカーソルforループ
- 8. forループのOracle SQL
- 9. レコード付きループ
- 10. oracle pl/sqlのカーソルのループ
- 11. ループ内の重複レコード
- 12. oracleフォームでレコード・タイプ内のレコードを変更する方法
- 13. 複数のレコードを持つOracleクエリ
- 14. Oracle - オーバーラップするレコードの削除
- 15. oracle pl/sqlのレコードを読み取る
- 16. 最後のエラー・レコードでデータ・フローが失敗する - Oracle宛先
- 17. のOracle SQLはすべての私のレコードを削除
- 18. Oracle欠損レコードを挿入する
- 19. Oracleに接続するPythonレコード
- 20. ユニークなレコードを取得するOracle SQL
- 21. oracleウェアハウス・テーブルから1Bnレコードを削除
- 22. 私はレコードで設定されているOracleの
- 23. クエリは、私が重複レコードを見つけるためのクエリしたOracle
- 24. Oracle - 列のリストをループする
- 25. Oracleストアドプロシージャのviaループを選択
- 26. ループ内のOracle PL/SQLキャプチャロック例外
- 27. oracleの動的xmlTypeをループする
- 28. Excel文書のレコードをループする
- 29. データベースからのinadequeteレコードを返すループ
- 30. 複数のOracle Smartviewリフレッシュがループ内で機能しない
分割が別々の値に文字列が難しい部分になるだろう、あなたは使用できませんでした、それはネイティブ関数は、PL/SQLでのJavaScriptなどである方法ではないとして、コレクション? –
'カンマ区切り文字列'句で選択するコードを表示 –
はい私はコレクションを使用できます。コールはC#メソッドから来ているので、私はあらゆる種類のパラメータを作ることができます。 –