我有两张表:一张大约有 2 亿行,另一张大约有 1 亿行。我需要将它们连接在一起并选择大约 3/4 的行和 1/6 的列,因此创建了一个新表,并使用以下方法插入其中:
INSERT INTO NEWTABLE
SELECT COLUMN1, COLUMN2, COLUMN3, COLUMN4
FROM TABLE1
UNION ALL
SELECT COLUMN1, COLUMN2, COLUMN3, COLUMN4
FROM TABLE2
LOCK IN SHARE MODE;
这需要一段时间。其实天。
我这样做是最快的方式吗?
我的感觉是查询不是主要问题 - 将两个源表复制到临时表需要时间。我如何证明这一点?如果是这样的话,我可以绕过它吗?
谢谢!