Comme je l'ai dit dans les commentaires :c'est exactement la même chose que dans Jointure interne utilisant distinct on
. Il vous suffit d'ajouter une autre jointure et un autre ORDER BY
groupe (cd.created_at DESC
)
SELECT DISTINCT ON (ed.emp_id)
e.emp_id, e.emp_no, e.emp_ref_no, ed.class_no, cd.*
FROM
emp_detail ed
JOIN emp e ON e.emp_id = ed.emp_id
JOIN class_detail cd ON ed.class_no = cd.class_no
ORDER BY ed.emp_id, ed.created_at DESC, cd.created_at DESC
Remarque :Je ne suis pas sûr de ce que le emp_id
colonne dans class_detail
est pour. Il ne semble pas bien conçu (c'est aussi parce qu'il est toujours 1
dans votre exemple.) Vous devriez vérifier si vous en avez vraiment besoin.