Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySql wählt alle Zeilen in einer Tabelle basierend auf dem MAX-Wert in einer anderen Tabelle aus

Sie können dies mit einer korrelierten Unterabfrage tun:

select a.*,
       (select application_stage
        from application_progress ap
        where ap.application_id = a.id
        order by stage_date desc
        limit 1
       ) MostRecentStage
from applications a;

BEARBEITEN:

Die Bewerberdaten können Sie etwa so eintragen::

select a.*, aa.*,
       (select application_stage
        from application_progress ap
        where ap.application_id = a.id
        order by stage_date desc
        limit 1
       ) MostRecentStage
from applications a join
     applicant aa
     on a.applicant_id = aa.id;