gpt4 book ai didi

mysql - 简单但缓慢的查询

转载 作者:可可西里 更新时间:2023-11-01 08:52:07 26 4
gpt4 key购买 nike

我有一个运行时间为 0.55 秒的简单查询。

SELECT tr.*

FROM Tournament_Result tr, Game g, Tournament t
LEFT JOIN Tournament_Type tt ON t.intType = tt.intTournamentType

WHERE tr.intTournamentId = t.intTournamentId
AND t.intGameId = g.intGameId
AND t.strStatus = 'live'

ORDER BY dtmCreated DESC

所有连接都是键,可以是主键,也可以是索引键。如果我删除左连接“LEFT JOIN Tournament_Type tt ON t.intType = tt.intTournamentType”,查询会立即运行。

所以我认为它一定是“t.intType = tt.intTournamentType”连接,但我检查了一下,两个键都是索引。不知道在这里做什么。我什至尝试过直接加入,它总是减慢速度的 Tournament_Type 表。我什至对它运行了“OPTIMIZE”命令。

有什么想法吗?

提前致谢!

阿敏

最佳答案

查询中缺少某些内容。Tournament_Type 表是LEFT JOINED

Tournament_Type 表中的字段均未用于任何其他联接或 SELECT

如果您要从 Tournament_Type 表中添加一列以显示在结果中

SELECT Tournament_Result.*,
(select <<Col1>> from Tournament_Type where Tournament_Type.intTournamentType=t.intType)

FROM Game
inner join Tournament on Tournament.intGameId = Game.intGameId
inner join Tournament_Result on Tournament_Result.intTournamentId = Tournament.intTournamentId
WHERE Tournament.strStatus = 'live'
ORDER BY dtmCreated DESC

关于mysql - 简单但缓慢的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12250459/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com