Mailinglisten-Archive |
Hallo Sebastian, > > Dann > > würde es Deiner Ausführung nach mehr Sinn machen, einen Gesamtindex > > über die Spalten "Klickzeitpunkt, RubrikPfad, DokumentID, BildID" > > statt jeweils über die einzelnen Spalten zu erzeugen? > > du brauchst einen Index über die Spalten die in der Abfrage > im ORDER, WHERE oder JOIN Teil vorkommen, und die Reihenfolge > ist natürlich auch noch relevant Ist nur eine Tabelle und ausgewertet wird in der Regel nur eine Spalte hinsichtlich eines begrenzten Zeitraums. > ... und wenn du eh ALLE Felder der Tabelle benötigst wäre der > Index selber ja genauso groß wie die Tabelle ... weniger praktisch nun ja, aber ich möchte ja alles wissen. Und das möglichst schnell... :-) Das der Index da recht groß wird, muß ich wohl hinnehmen. Meine Idee diesbezüglich ist es, die Tabelle in mehrere kleinere aufzuteilen und darin immer nur die Daten der jeweiligen Zeit-Bereiche zu speichern. Ich überlege gerade, ob ich als begrenzenden Faktor da die tatsächliche Tabellengröße oder vielleicht sogar einfach nur die Monatszahlen verwende. Also vielleicht "statistik_2006_06", "statistik_2006_07" u.s.w. und die Abfrage dann mittels UNION anhand der tatsächlich abgefragten Zeiträume zusammensetze. Das wäre auf jeden Fall besser als die Tabelle z.B. immer nur jedes Jahr neu beginnen zu lassen, da bei einem Abfragebereich von z.B. 1.1.06 bis 28.2.06 nur zwei Tabellen angefaßt werden müssten... und somit auch nur die darin vorhandenen Datenmengen. Besonders vorteilhaft wäre das ggf. sogar, wenn der Abfragebereich über die Jahresgrenze hinweg geschieht, also z.B: 25.12.05 bis 31.1.06, da auch hier nur zwei vergleichsweise kleine Tabellen betrachtet werden würden. Was sagst Du dazu? Grüße Tim -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive