25 08 2015 SQLAlchemy Tweet
OracleではIN句に1000以上の要素を指定するとエラーが出る。
例えばSQLAlchemyだとこんな感じのクエリでidsに1000以上の要素を入れるとダメ
Patent.query.filter(Patent.first_publication_date > patent_since).filter(Patent.tbas.any(ThomsonTba.id.in_(ids))).all()
じゃぁどうするの?と調べたら1000未満の要素に分割してor_でつなげばいいんだよという…
実際これで動いたけど、2000超えたらまたエラーが出て書きなおさなきゃいけないのが見えてるからよろしくないよなぁ。
良い方法はないものか…