sql >> Database >  >> RDS >> Mysql

Is het mogelijk om een ​​sum() in MySQL te versnellen?

Nee, je kunt de functie zelf niet versnellen. Het probleem hier is eigenlijk dat je 7,3 miljoen records selecteert. MySQL moet de hele tabel scannen en 7,3 miljoen is een behoorlijk groot aantal. Ik ben onder de indruk dat het eigenlijk zo snel klaar is.

Een strategie die u zou kunnen gebruiken, zou zijn om uw gegevens op te splitsen in kleinere subsets (misschien op datum? Maand?) en een totaalbedrag voor oude gegevens bij te houden dat niet zal veranderen. U kunt de som periodiek bijwerken en de totale waarde kan worden berekend door de som op te tellen en eventuele nieuwe gegevens die sindsdien zijn toegevoegd, wat een veel kleiner aantal rijen zal zijn.



  1. brew services lijst toont mysql actief maar kan geen verbinding maken

  2. Standaardwaarde voor kolom DATE-type instellen op huidige datum zonder tijdsdeel?

  3. Verlaag de licentiekosten voor SQL Server

  4. Een database herstellen vanuit C#