我有一个数据库表,其中记录了调试日志条目。没有外键-它是一个独立的表。
我编写了一个实用程序,用于删除最旧的条目。
有6500万个条目,因此我一次删除了100,000个,以向用户提供一些进度反馈。
有一个名为id的主键列
一切都很好,直到剩下约5万亿条记录为止。然后开始需要1分钟以上的时间来执行。
更重要的是,如果我使用PgAdmin并在我自己中键入查询,但是使用我知道的ID小于最小ID,则仍然需要一分钟以上的时间来执行!
即:从public.inettklog中删除,其中id <= 56301001 我知道min(id)是56301002
这是解释分析的结果
答案 0 :(得分:1)
您的统计信息已过时。它认为它将找到3000万行,但发现为零。分析表格。