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

Je možné urychlit sum() v MySQL?

Ne, samotnou funkci nelze urychlit. Problém je ve skutečnosti v tom, že vybíráte 7,3 milionu záznamů. MySQL musí skenovat celou tabulku a 7,3 milionu je docela velké číslo. Jsem ohromen, že to skončí tak rychle, vlastně.

Strategií, kterou byste mohli použít, by bylo rozdělit data na menší podmnožiny (třeba podle data? Měsíce?) a udržovat celkový součet starých dat, který se nezmění. Součet můžete pravidelně aktualizovat a celkovou hodnotu lze vypočítat sečtením součtu a všech nových dat, která byla od té doby přidána, což bude mnohem menší počet řádků.



  1. Jak migrovat databázi SQL Server do MySQL?

  2. Sloupec 'user_id' v seznamu polí je nejednoznačný

  3. Jak získat hodnotu SQL_CALC_FOUND_ROWS pomocí připravených příkazů?

  4. MySQL hash indexy pro optimalizaci