Mailinglisten-Archive |
Sorry, aber auch mit Indexen dürfte das nicht mehr viel schneller werden. Warum ? MySQL muss definitiv durch die gesamte Tabelle wandern (weiss nicht, wie gross die ist). Und erfahrungsgemäss helfen Indexe beim Gruppieren nicht so stark wie in der Where-Klausel. Du könntest höchstens mal versuchen, den Wert der Server-Variable record_buffer (und ggf. sort_buffer) zu erhöhen, damit bei ähnlichen Abfragen der selben Tabelle wenigstens die Abfragen 2-n nicht mehr auf die Platte müssen, sondern aus dem Cache mit Daten versorgt werden. MfG Thomas > -----Ursprüngliche Nachricht----- > Von: Christoph Schick [mailto:mysql-german_(at)_joenet.at] > Gesendet: Mittwoch, 12. Dezember 2001 15:09 > An: mysql-de_(at)_lists.4t2.com > Betreff: Knifflige Query - Hilfe > > > Hi Leute! > > Ich habe da ein ziemliches Problem: > Ein Kunde von uns ist mit einer selbstgebastelten Software, > die auf MySQL > aufsetzt, zu uns gekommen. Wir sollen nun dafür div. > Admin-Tools schreiben, > jedoch hat er bei der Planung der DB-Struktur damals ein paar Fehler > gemacht. > > In der Tabelle um die es geht sind zur Zeit ~120.000 > Datensätze. Es gibt > unter anderem 5 Spalten (z1 - z5). In jeder dieser Spalte > stehen Zahlen von > 1-16 drinnen. Nun müßte ich rausbekommen, wie oft jede Zahl > insgesamt in > allen 5 Spalten vorkommt. > > Zuerst habe ich mir gedacht, ich mache 'ne Query extra für > alle 5 Spalten, > also z.B.: > 'SELECT z1, COUNT(z1) FROM log GROUP BY z1;' > , und dass ich dann einfach die Ergebnisse addiere. > Allerdings dauert jede > dieser Queries auf einem Durchschnitts-Computer ~5.5sec, so > dass wir auf > insgesamt ~30sec. kommen würden! Und das ist einfach zu lang :( > > Habt ihr 'ne Idee wie ich das Problem von der Laufzeit her am > besten lösen > könnte? > > Danke! > > > Schöne Grüße > Christoph > > --- > Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter > -->> http://www.4t2.com/mysql > --- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive