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

Datetime vs Date and Time Mysql

Der er en enorm forskel i ydeevne, når du bruger feltet DATE over feltet DATETIME. Jeg har en tabel med mere end 4.000.000 poster og til testformål tilføjede jeg 2 felter med begge deres eget indeks. Det ene bruger DATETIME og det andet felt med DATE.

Jeg deaktiverede MySQL-forespørgselscache for at kunne teste korrekt og gik over den samme forespørgsel i 1000x:

SELECT * FROM `logs` WHERE `dt` BETWEEN '2015-04-01' AND '2015-05-01' LIMIT 10000,10; DATETIME INDEX:197,564 sekunder.

SELECT * FROM `logs` WHERE `d` BETWEEN '2015-04-01' AND '2015-05-01' LIMIT 10000,10; DATOINDEKS:107,577 sekunder.

Brug af et datoindekseret felt har en præstationsforbedring på:45,55 %!!

Så jeg vil sige, hvis du forventer en masse data i din tabel, skal du overveje at adskille datoen fra tidspunktet med deres eget indeks.



  1. spring jpa application.properties useSSL

  2. MySQL kumulativ sum grupperet efter dato

  3. Lær databasedesign med SQL Server Management Studio (SSMS) – Del 2

  4. Hvordan viser man billedalbum i indlæg? [bruger kun PHP og MYSQL]