Ich habe eine einfache Abfrage:Langsam mysql query (mit 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;
Es dauert 3 Sekunden. Wenn ich die innere Auswahlabfrage entferne und sie durch die Ergebnisse der Abfrage ersetze, dauert es .1 Sekunden. Wenn ich die innere Abfrage alleine ausführe, dauert es .1 Sekunden. Wenn ich das Join to Sensors entferne, läuft es in 0,5 Sekunden (was in Ordnung wäre.) Irgendwelche Ratschläge? Ich habe Indizes auf die Id-Spalten, die INT sind.
Ich mag es... Ich habe der inneren Abfrage eine WHERE-Klausel hinzugefügt, um die Anzahl der zurückgegebenen Zeilen zu reduzieren, und es ist blitzschnell.Danke! – Jay