【发布时间】:2021-06-07 23:34:17
【问题描述】:
我有一个这样的 SQL:
INSERT INTO table1 (column1, column2) (
SELECT column3, column4 FROM table2 WHERE column5 = 'value'
);
-
table1有 3,500,000 行。 -
table2有 900,000 行。 -
SELECT column3, column4 FROM table2 WHERE column5 = 'value'返回 NO 寄存器(零),耗时约 0.004 秒。 -
INSERT INTO table1 (column1, column2) VALUES ('value', 'value')也需要大约 0.004 秒。
但是当我在INSERT INTO SELECT 语句中结合两者时,如上所示,大约需要 7.7 秒。有解释吗?有没有解决办法?
【问题讨论】:
-
要插入多少行?
-
正在插入零行,戈登。
-
您需要向我们展示您的执行计划
EXPLAIN EXTENDED或ANALYZE
标签: sql database mariadb query-optimization sql-insert