この日記は私的なものであり所属会社の見解とは無関係です。 GitHub: takahashikzn

『OracleのIN句の引数は1000個まで』問題

Oracleには、IN句の引数が1000個までという制限(※)があります。

(※) Oracleアーキテクチャ上、IN句の最適化が難しいためにわざと設けた制限であると、どこかで読んだ気が。


JPQLにもIN句があるので、
OracleJPAを使用した場合は同様の制限があるのかも。自前で対応するのメンドクサイなー』
と思いつつ調べてみたところ…


EclipseLinkは、IN句が1000個の上限を超えた場合、

(hoge IN (...)) OR (hoge IN (...))

のように自動的に分割してくれるらしいです。わーい。