【问题标题】:Delete Query on Oracle Database taking time删除 Oracle 数据库上的查询需要时间
【发布时间】:2016-07-22 15:00:46
【问题描述】:

我有一个这样的查询。

DELETE FROM ExampleTable WHERE pdate <= (select max(date) from table2 )

执行时间过长(大约 20 分钟)。

如果我即时在列 pdate 上创建索引并执行查询,是否会有所不同。执行成功后,我删除了索引。

我们可以像在插入 APPEND 提示中那样在查询中添加任何提示以使其更快吗?

【问题讨论】:

    标签: oracle database-administration


    【解决方案1】:

    这取决于。如果删除不超过 15% 的行(大约是计数),那么索引将为您提供帮助。 对我来说,我在表上创建分区,分区部分在 pdate 上。看着你的查询,我假设你删除了旧数据。

    看看这个简短的解释https://oracle-base.com/articles/8i/partitioned-tables-and-indexes

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-22
      • 2020-08-28
      相关资源
      最近更新 更多