我有一个简单的查询:慢速MySQL的查询(使用IN)
SELECT Description, Temp1, Temp2, SensorData.DateAndTime
FROM SensorData
INNER Join Sensors on Sensors.ChipId=SensorData.RockID
WHERE SensorData.Id in (Select max(Id) LastRecord
From SensorData
Group by RockId)
ORDER BY DhtTemp;
它需要3秒。如果我删除内部选择查询并将其替换为查询中的结果,则需要花费0.1秒。如果我单独运行内部查询,则需要.1秒。如果我删除加入传感器它运行在0.5秒(这将是好的。)任何建议?我有关于Id列的索引是INT。
我喜欢它。我在内部查询中添加了where子句,以减少返回的行数,并且速度非常快。谢谢! – Jay