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

Er det muligt at fremskynde en sum() i MySQL?

Nej, du kan ikke fremskynde selve funktionen. Problemet her er virkelig, at du vælger 7,3 millioner plader. MySQL skal scanne hele bordet, og 7,3 millioner er et ret stort tal. Jeg er imponeret over, at det faktisk slutter så hurtigt.

En strategi, du kunne bruge, ville være at opdele dine data i mindre delmængder (måske efter dato? Måned?) og vedligeholde en samlet sum for gamle data, som ikke vil ændre sig. Du kan periodisk opdatere summen, og den samlede værdi kan beregnes ved at tilføje summen og alle nye data, der er blevet tilføjet siden da, hvilket vil være et meget mindre antal rækker.



  1. Fjerner duplikerede rækker fra tabellen i Oracle

  2. Brug IN-direktivet til at søge med en forberedt redegørelse

  3. gemmer html-indhold i mysql-databasen

  4. CakePHP - få den sidste forespørgsel kørt