我有一个带有 2 个子查询的 SQL 查询。每当我在 macOS 上的 MySQL Workbench 上运行它时,它都会给出“错误代码:2013。查询期间丢失与 MySQL 服务器的连接”。但是在Windows上的Workbench上运行时,运行正常,没有任何错误。 我尝试增加连接超时时间,但仍然没有成功! 关于如何解决这个问题有任何线索吗? 感谢您的支持与合作。
这是一个给出错误的查询:
with t1 as(
SELECT s.name rep_name, r.name region_name, sum(o.total_amt_usd) as total_amt
FROM sales_reps s
JOIN accounts a
ON a.sales_rep_id = s.id
JOIN orders o
ON o.account_id = a.id
JOIN region r
ON r.id = s.region_id
group by 1,2),
t2 as(
select region_name, max(total_amt) as total_amt
from t1
group by 1)
select t1.rep_name, t1.region_name, t1.total_amt
from t1
join t2
ON t1.region_name = t2.region_name AND t1.total_amt = t2.total_amt;
最佳答案
您的查询返回数据的时间太长,因此连接被断开。有 2 种方法可以解决此问题。
(i) 优化查询
(ii) 增加 MySQL 超时
解释第二种方式:
1. In the application menu, select Edit > Preferences > SQL Editor.
2. Look for the MySQL Session section and increase the DBMS connection read time out value.
3. Save the settings, quite MySQL Workbench and reopen the connection.
关于mysql - 仅在 MacOS 上查询期间丢失与 MySQL 服务器的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57423241/