phpbar.de logo

Mailinglisten-Archive

AW: Knifflige Query - Hilfe

AW: Knifflige Query - Hilfe

Thomas Lamy mysql-de_(at)_lists.bttr.org
Thu, 13 Dec 2001 17:53:24 +0100


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