【发布时间】:2019-02-04 16:08:06
【问题描述】:
大家好,我需要将 6000000 行从 TMP_DATA 复制到 DATA 最好的方法是什么?
我正在考虑做INSERT INTO DATA SELECT * FROM TMP_DATA。但我认为插入需要很长时间。
你有什么建议?
亲切的问候,
【问题讨论】:
-
这可能是最好的方法,而且它不应该花费很长时间(600 万行并不是那么多),除非你在接收表上有很多触发器和索引等等(和/或除非更新是通过慢速网络进行的)。
-
TMP_DATA 上是否有超过 6,000,000 行?有几种方法可以限制行数; select 或
where rownum < 6000001的SAMPLE子句 - 但如果您只关心速度,Andres 在下面的回答很好。
标签: sql oracle sql-insert