sql >> Database teknologi >  >> RDS >> Mysql

GRUPPER VED at have MAX-dato

At sætte underforespørgslen i WHERE-sætningen og begrænse den til n.control_number betyder, at den kører underforespørgslen mange gange. Dette kaldes en korreleret underforespørgsel , og det er ofte en præstationsdræber.

Det er bedre at køre underforespørgslen én gang i FROM-klausulen for at få den maksimale dato pr. kontrolnummer.

SELECT n.* 
FROM tblpm n 
INNER JOIN (
  SELECT control_number, MAX(date_updated) AS date_updated
  FROM tblpm GROUP BY control_number
) AS max USING (control_number, date_updated);


  1. MySQL vs. MongoDB

  2. Vedligeholdelse af indekseret visning i udførelsesplaner

  3. SQL CREATE DATABASE Syntaks – Listet efter DBMS

  4. Tillad null i unik kolonne