sql >> Base de Datos >  >> RDS >> Mysql

MySql selecciona todas las filas en una tabla según el valor MAX en otra tabla

Puede hacer esto con una subconsulta correlacionada:

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;

EDITAR:

Puede unir los datos del solicitante con algo como esto::

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;