sql >> Databasteknik >  >> RDS >> Mysql

Väljer de senaste posterna för distinkt post

Här är frågan du letar efter:

SELECT A.lead_id
    ,MAX(A.app_id) AS [last_app_id]
FROM appointment A
GROUP BY A.lead_id

Om du vill att alla kolumner ska motsvara dessa förväntade rader:

SELECT A.*
FROM appointment A
INNER JOIN (SELECT A2.lead_id
                ,MAX(A2.app_id) AS [last_app_id]
            FROM appointment A2
            GROUP BY A2.lead_id) M ON M.lead_id = A.lead_id
                                     AND M.last_app_id = A.app_id
ORDER BY A.lead_id

Här använder jag helt enkelt den föregående frågan för en jointure för att bara få de önskade raderna.

Hoppas detta hjälper dig.



  1. Varför MySQL ger fel. Får inte returnera en resultatuppsättning från en funktion?

  2. MySQL-fråga för att hitta de tre senaste datumen i en tabell

  3. MySQL-sammansättningsoperatör

  4. hur lagrar jag PostgreSQL jsonb med SpringBoot + JPA?