我有Insert Into ... SELECT
声明。该语句由3个选择UNION ALL CLAUSE
的连接组成。
Insert into
(Select... (1)
UNION ALL
Select... (2)
UNION ALL
Select... (3)
)
表,我插入的是nologging模式,Parallel degree = 8,并使用/*+ APPEND*/
子句。
选择1和2只是简单选择1个表。我在pl / sql块中运行了这两个选择,如:
Select count(1) into x From
(Select (1) UNION ALL Select... (2))
它在3秒内返回了大约150万条记录。然后我将这些选择放入insert语句:
INSERT INTO TABLE_NAME
(Select (1) UNION ALL Select... (2))
插入持续时间与上述相同。
现在,最后(3)选择是从1表和少数连接(包括1个左连接)。
当我在Select Count(1) Into x
中运行它时,它在大约3分钟内返回了80 000条记录。
我希望插入80 000条记录不会超过select count(1) into
的时间,与此同时insert into ... select
已经有半小时的执行时间。
任何人都能看到我,有什么事吗?我做错了吗?