Como dije en los comentarios:es exactamente lo mismo que en Combinación interna usando distinto en
. Simplemente tienes que añadir otro join y otro ORDER BY
grupo (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
Nota :No estoy seguro de cuál es el emp_id
columna en class_detail
es para. Parece que no está bien diseñado (esto también se debe a que siempre es 1
en su ejemplo.) Debe verificar si realmente lo necesita.