Dit zou het moeten doen:
SELECT p.id
FROM post p
LEFT JOIN comment c on c.post_id = p.id
GROUP BY p.id
ORDER BY COALESCE(GREATEST(p.created, MAX(c.created)), p.created) DESC
Als we aannemen dat een opmerking altijd ouder is dan de post, kunnen we het volgende vereenvoudigen:
SELECT p.id
FROM post p
LEFT JOIN comment c on c.post_id = p.id
GROUP BY p.id
ORDER BY COALESCE(MAX(c.created), p.created) DESC