sql >> Database >  >> RDS >> Mysql

Rijen sorteren op rij in een andere tabel om een ​​What's Hot-lijst te vullen

Je kunt dit doen met een left 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;

De samensmeltingen hier zorgen ervoor dat niveaus waarop niet is gestemd een score krijgen (in plaats van nul) en correct worden gesorteerd.




  1. MySQL:Wat is een omgekeerde versie van LIKE?

  2. Update en selecteer in één zoekopdracht

  3. ON DELETE SET NULL in postgres

  4. Kan mysqlclient niet installeren in virtualenv op nieuwe Mac