Варианты разбивки слишком большого запроса SQL

У нас есть SQL сервер в котором стоит ограничение по размеру SQL запроса ~200кб. Я столкнулся с задачей поменять подход к получению данных через SELECT запрос куда передаётся большое количество ID для WHERE IN параметра, настолько большое что он исчерпывает ограничения на сервере.

Пока что я придумал следующие варианты обхода этого ограничения, буду признателен если можете подсказать ещё:

  1. Создавать временную таблицу и туда вставить необходимые ID значения поблочно (опять-таки чтобы не упереться в ограничение), а потом делать SELECT из неё внутри WHERE IN.
  2. Передать с запросом max_query_size с большим значением благо драйвер это позволяет
  3. Сделать поблочные запросы в изначальном SQL, что вряд ли возможно так как там используется группировка и агрегация.

Ответы (0 шт):