在空表中执行缓慢的查询.(删除大量插入后)

Ste*_*gas 13 oracle indexing performance response

我在一个包含15个字段的oracle数据库中有一个表.该表有3500000个插入.我全部删除了它们.

delete
from table
Run Code Online (Sandbox Code Playgroud)

在那之后,每当我执行一个select语句时,
即使表是空的,我也会得到一个非常慢的响应(7秒).只有在我根据索引字段进行搜索的情况下才会得到正常响应.

为什么?

小智 8

正如Gritem所说,你需要了解高水位等

如果你不想truncate在现在表(因为新数据已经插入),使用alter table xyz shrink space记录在这里的10G


小智 7

Tom Kyte对此问题有一个很好的解释:

http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:492636200346818072

它应该可以帮助您理解删除,截断和高水位等.