У меня есть самый обычный запрос на удаление (delete from table t where ...);
Как мне его оптимизировать , если в таблице оооочень много записей, и надо удалять порядка 200 тыс записей. в таблице содержится млн-ы записей. При удаление происходит еще удаление из зависимых таблиц ( у одной записи порядка 30 зависимых записей в разных таблицах).
explain analyze
показывает
Delete on t (cost=0.00..37370.84 rows=4758 width=6) (actual time=146.687..146.687 rows=0 loops=1)
-> Seq Scan on t(cost=0.00..37370.84 rows=4758 width=6) (actual time=146.682..146.682 rows=0 loops=1)
Filter: (event_id = 437)
Rows Removed by Filter: 1497652
Total runtime: 146.726 ms
в этом примере удаление примерно 3 тыс записей происходит