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

Returnerer den 'sidste' række af hver 'gruppe efter' i MySQL

Prøv denne forespørgsel -

SELECT t1.* FROM foo t1
  JOIN (SELECT uid, MAX(id) id FROM foo GROUP BY uid) t2
    ON t1.id = t2.id AND t1.uid = t2.uid;

Brug derefter EXPLAIN at analysere forespørgsler.

SELECT t1.* FROM foo t1
  LEFT JOIN foo t2
    ON t1.id < t2.id AND t1.uid = t2.uid
WHERE t2.id is NULL;


  1. Konfigurer SQL Server Log Shipping

  2. Hvordan kan jeg bruge UUID'er i SQLAlchemy?

  3. Generel fejl:OS-version stemmer ikke overens

  4. Adaptiv dynamisk statistik dræber ydeevne i 12.1.0.2 RAC