Come ho affermato nei commenti:è esattamente la stessa cosa di Inner join usando distinto su
. Devi semplicemente aggiungere un altro join e un altro ORDER BY
gruppo (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 :Non sono sicuro di quale sia il emp_id
colonna in class_detail
è per. Sembra non ben progettato (questo anche perché è sempre 1
nel tuo esempio.) Dovresti verificare se ne hai davvero bisogno.