0

特定の ID が既にデータベース内にあるかどうかを確認しようとすると、ORA-12733: 正規表現が長すぎますというエラーが発生します。

regexp_like (','||a.IDs||',',',('||replace(b.IDs,',','|')||'),')

a.ID と b.ID は、id=16069,16070,16071,16072,16099,16100 のような形式です。

コンマを|に置き換えます b では、数字のいずれかが一致するかどうかがわかります。a.ID と b.ID の長さは、クエリによって異なる場合があります。Oracle regexp_like の制限はわずか 512 です。他の可能な解決策を知っている人はいますか?

4

1 に答える 1