sql >> Database teknologi >  >> RDS >> Mysql

Sortering af rækker for rækker i en anden tabel for at udfylde en What's Hot-liste

Du kan gøre dette med en venstre join:

SELECT levels.*, coalesce(sum(votes.vote),0) as total_vote
FROM levels 
LEFT JOIN votes ON votes.levelid = levels.id
WHERE votes.date >=( CURDATE() - INTERVAL 7 DAY ))
GROUP BY levels.id
ORDER BY coalesce(sum(votes.vote),0) desc;

Sammensmeltningerne her sikrer, at niveauer, der ikke er blevet stemt om, får en score (i stedet for null) og er sorteret korrekt.




  1. Fejl:MySQL lukning uventet. Mens du prøver at starte Mysql på Xampp

  2. Hvad er MariaDB Enterprise, og hvordan administreres det med ClusterControl?

  3. PDO MySQL backup funktion

  4. Sådan opgraderes MariaDB 5.5 til MariaDB 10.1 på CentOS/RHEL 7 og Debian Systems