sql >> Databáze >  >> RDS >> Mysql

SQL najít nejoblíbenější kategorii

Zkuste to. použijte skupinu podle s názvem kategorie. Zakomentoval jsem vytvořenou klauzuli at, jak jste uvedli, můžete ji odkomentovat, pokud ji chcete použít.

 SELECT c.name, SUM(ABS(v.item_id)) 
 FROM categories c,items i, votes v
 WHERE c.name = i.name
    AND i.item_id=v.item_id
    --AND v.created_at > #{1.week.ago}
 GROUP BY c.name 
 ORDER BY SUM(ABS(v.item_id)) DESC LIMIT 5;

všimnete si, že jsem nepoužil klíčové slovo JOIN, ale místo toho filtroval výsledky dotazu pouze pomocí klauzulí WHERE, což může být srozumitelnější. pokud se chcete o JOINech dozvědět více, zde je návod .

Zde je také výukový program o aliasech SQL (klauzule AS). ve skutečnosti je na tomto webu spousta dalších tutoriálů pro spoustu různých SQL témat, která nejsou závislá na platformě.

upravit: opraveno podle komentářů, přidána funkce abs,



  1. Jak mohu získat seznam databází MySQL v PHP pomocí PDO?

  2. Úvod do Failover pro replikaci MySQL – blog 101

  3. ERROR 1054 (42S22):Neznámý sloupec „‍‍“ v „seznamu polí“

  4. Zkoumání dopadu na výkon adhoc zátěže