Coba buat indeks di (DeviceId, MessageCounter DESC) .
Coba juga kueri ini:
select *
from "Timestamps"
where DeviceId = 1
and MessageCounter = (SELECT MAX(MessageCounter) FROM "Timestamps" WHERE DeviceID = 1)
Hanya menebak:Perbedaan kinerja mungkin karena DeviceId = 1 tersebar di lebih banyak halaman daripada DeviceId = 4 . Dengan menyortir, saya menduga Anda sedang mengeruk semua halaman yang cocok, bahkan jika Anda akhirnya hanya memilih baris atas.