我有 2 个表,其中一个包含 BLOB。
psh table
................................
ID
playerID
stateID
sceneID
ps table
..................................
ID
playerID
playerState
我需要得到的是按 sceneID(来自 psh 表)分组的 ps 表中的 ID 计数。 所以我要加入 2 个表并分组。 问题是在此特定查询中,group by 子句使数据库崩溃,我收到错误 2013:查询期间丢失连接。
如果我尝试使用 group by 的其他查询,它会工作得很好。
这是我的查询,请帮忙:
select count(ps.ID) from innodb.player_spin as ps
JOIN innodb.player_state_history as psh ON
psh.playerId = ps.playerId
WHERE psh.sceneId IN (9, 19, 29, 30)
group by psh.sceneId;
最佳答案
GROUP BY
来自表 psh
。应该是驱动表和非group by table连接:
select count(ps.ID)
FROM player_state_history as psh
JOIN player_spin as ps ON
psh.playerId = ps.playerId
WHERE psh.sceneId IN (9, 19, 29, 30)
GROUP BY psh.sceneId
如果在 psh.sceneId
上正确建立索引,这应该会大大加快速度
关于mysql - MySQL 查询中的 GROUP BY 子句仅在某些情况下会导致我的连接崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46114765/