我有一個簡單的查詢:慢速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