PHPGangsta - Der praktische PHP Blog

PHP Blog von PHPGangsta


Archive for the ‘Explain’ tag

SQL richtig schreiben: Ausnutzung von Indizes

with 6 comments

PerformanceUm SQL kommt man in der heutigen Webentwicklung nicht herum, und jeder von uns kann SQL-Queries erstellen. Doch nicht jeder SQL-Query, der das korrekte Ergebnis zurückliefert, ist optimal aus Sicht der Performance. Hier ein kleines Beispiel:

Wir haben folgende Tabelle:

CREATE TABLE IF NOT EXISTS `Login` (
  `LoginId` int(11) NOT NULL AUTO_INCREMENT,
  `UserId` int(11) NOT NULL,
  `LoginDateTime` datetime NOT NULL,
  PRIMARY KEY (`LoginId`)
)

Nehmen wir an in der Tabelle sind 10.000.000 Zeilen. Es sind 10.000 verschiedene UserIds enthalten und jeder User hat im Schnitt 1.000 Logeinträge in den letzten 3 Jahren produziert. Die Tabelle enthält erstmal keine Indizes.

Die Aufgabe ist die folgende: Hole alle Logeinträge die in den letzten 30 Minuten stattgefunden haben.

Die Queries

Weiterlesen »

Written by Michael Kliewe

März 27th, 2013 at 10:10 am