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

Vypočítejte průběžný součet v MySQL

Možná je to pro vás jednodušší řešení a zabrání tomu, aby databáze musela dělat tuny dotazů. To provede pouze jeden dotaz a poté provede malou matematiku s výsledky v jediném průchodu.

SET @runtot:=0;
SELECT
   q1.d,
   q1.c,
   (@runtot := @runtot + q1.c) AS rt
FROM
   (SELECT
       DAYOFYEAR(`date`) AS d,
       COUNT(*) AS c
    FROM  `orders`
    WHERE  `hasPaid` > 0
    GROUP  BY d
    ORDER  BY d) AS q1

Tím získáte další sloupec RT (průběžný součet). Nenechte si ujít příkaz SET nahoře, abyste nejprve inicializovali běžící proměnnou součtu, jinak získáte jen sloupec hodnot NULL.



  1. Zápis do konkrétních schémat pomocí RPostgreSQL

  2. Oracle ODP.Net With Entity Framework 6 – poskytovatel kompatibilní s databází Entity Framework nebyl nalezen

  3. Získejte rozdíl v letech mezi dvěma daty v MySQL jako celé číslo

  4. Nechvalně známá výjimka java.sql.SQL:Nebyl nalezen žádný vhodný ovladač