sql >> Database >  >> RDS >> Mysql

MySQL-bestel berichten op meest recente opmerking OF laatst gepost

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



  1. Hoe vindt u de MySQL-databaselocatie op uw harde schijf?

  2. MySQL/MariaDB-databases bewaken met Netdata op CentOS 7

  3. Bulk update mysql met waar statement

  4. PDO - Fatale fout:aanroep van een lidfunctie fetch() op een niet-object