Ich habe eine einfache Tabelle mit Formularanfragen, mit Primärschlüssel id, und den Indizes für Feld Datum/Uhrzeit (date) und Kunden (username). Bei der Zusammenfassung der wöchentlichen Nutzung per Kunde werden keine Indizes benutzt. Weiß jemand warum, bzw. wie es besser geht?. Die Abfrage ist tatsächlich recht langsam (0.5s auf dem lokalen Rechgner bei grade mal 5.500 Datensätzen).
Hier die Abfrage:
Code:
EXPLAIN SELECT COUNT( id ) AS anzahl, WEEK( date, 1 ) AS week
FROM frmlog
WHERE username <> 'admin'
GROUP BY WEEK( date, 1 )
ORDER BY date DESC
LIMIT 0 , 52
und das Ergebnis von EXPLAIN:
Code:
table type possible_keys key key_len
frmlog ALL NULL NULL NULL
ref rows Extra
NULL 5579 Using where; Using temporary; Using filesort
Die Indizes:
Code:
Name Typ Kardinalität Feld
PRIMARY PRIMARY 5582 id
USER INDEX 105 username
date INDEX 5582 date