sql >> Database >  >> RDS >> Sqlserver

Optimaal presterende query voor het laatste record voor elke N

Hangt af van uw gegevens (hoeveel rijen zijn er per groep?) en uw indexen.

Zie Top N zoekopdrachten per groep optimaliseren voor enkele prestatievergelijkingen van 3 benaderingen.

In uw geval met miljoenen rijen voor slechts een klein aantal voertuigen zou ik een index toevoegen op VehicleID, Timestamp en doe

SELECT CA.*
FROM   Vehicles V
       CROSS APPLY (SELECT TOP 1 *
                    FROM   ChannelValue CV
                    WHERE  CV.VehicleID = V.VehicleID
                    ORDER  BY TimeStamp DESC) CA  


  1. PHP &MYSQL:bcrypt hash gebruiken en wachtwoord verifiëren met database

  2. Een fout oplossen bij het maken van een groot IMDB-model

  3. Voorwaardelijke lead/lag-functie PostgreSQL?

  4. Sla meerdere rijen uit de mysql-database op in één enkele variabele