【发布时间】:2019-12-02 03:42:49
【问题描述】:
我在 MySQL 中有一个来自 4 个表的查询。当我单独运行这些查询时,它们会在 1 秒内快速运行。
但是当我使用 UNION ALL 组合它们时,机器会承受重负载,并且在 UNION ALL 中执行相同查询至少需要 10 秒。而且我已经挖掘了整个互联网,包括 YouTube,但不幸的是我还没有找到任何解决方案。
请指教。
谢谢。
code
SELECT *
FROM (
SELECT id, sessionId FROM promotion
UNION ALL
SELECT id, sessionId FROM transport_details
UNION ALL
SELECT id, sessionId FROM fee_details
) a;
【问题讨论】:
-
我只能看到3张桌子
-
例如,我在这里只放了 3 张桌子。实际上它有超过 3 个表。
-
但是同样的查询在 MS SQL Server 中运行得更快。
-
你可以在你的 ms sql 上有索引
-
让我知道表格的结构
标签: mysql performance union union-all