PL SQL - 快速删除

时间:2011-03-14 12:34:45

标签: plsql

我有一张桌子,每天存储数百万条记录(即第1天,000,000,第2天以前,000,000条记录+ x,000,000新记录等)。我希望通过每小时的过程删除特定记录(假设这些记录带有id_name =' PB-HQ')但是使用命令DELETE它会花费足够的时间作为每次从第一行开始运行过程的表按行。还有其他解决方案(使用cusror-fetch ???)

2 个答案:

答案 0 :(得分:1)

一个选项是通过id_name(可能是基于列表的分区)对表进行分区,然后你要做的就是截断“PB-HQ”的分区。

答案 1 :(得分:-1)

为什么呢?如果您不希望表中包含id_name ='PB-HQ'的记录,可能更好的解决方案是不插入它们,而不是每小时删除一次。如果你需要它们一段时间,请放入另一个表并查看截断表。