коробки не умеет её решать (или я не разобрался до конца).
Есть две таблицы одинаковой структуры, надо из одной (~100к строк) сделать upsert в другую (~300 млн строк), проверка наличия происходит по одной из колонок. Перф такого запроса в целом не очень волнует, главное чтоб не час.
Текущая идея заключается в большом кол-ве запросов на удаления через alter table … delete where key in (...) и инсёрт-селекта после этого, но вдруг кто-то знает решение симпатичнее?
Я бы поэкспериментировал с количеством значений в секции IN. Когда-то уделялось большое внимание, чтобы запросы с большими перечислениями нормально парсились и работали. Сейчас могут быть тормоза из-за анализа индекса. Но можно добиться, что и за один запрос на 100 000 идентификаторов будет работать.
Обсуждают сегодня