示例
示例
DELETE FROM logs l
USING (
SELECT ctid FROM logs
WHERE created_at < now() - interval '90 days'
ORDER BY id
LIMIT 5000
) b
WHERE l.ctid = b.ctid;| 死元组 | DELETE/UPDATE 旧版本留在表中,autovacuum 负责回收 |
|---|---|
| 膨胀 | 长期高频删除的大表要检查 n_dead_tup 与表大小占比 |
| 替代 | 按时间分区的表可直接 DETACH/DROP 分区,代价更低 |