phpbar.de logo

Mailinglisten-Archive

[php] 1/2 OT - Anzahl ermitteln

[php] 1/2 OT - Anzahl ermitteln

Sebastian Mendel lists at sebastianmendel.de
Mon Mai 23 16:27:21 CEST 2005


Norbert Pfeiffer wrote:
> Hi,
> 
> 
>>select count(distinct tarif) from transactions
> 
> das war die Loesung - aber:
> bei:
> select count(distinct trefnum) from transactions
> schmiert der PC ab.
> D.h. es ist kaum noch ein Fenster zu wechseln.

fürs Protokoll: ein Index auf `trefnum` existiert?

DISTINCT-Selects (und COUNTs) sind meist sehr Resourcenfressend

eventuell ist ja ein "SELECT `tarif` GROUP BY `tarif`"
und ein ein mysql_num_rows() schneller.


> Nach ewig langer Zeit kam ich in den Taskmanager
> und MySQL wurde mit 99% angezeigt. Der PC liess
> sich nur durch Ziehen des Steckers runterfahren.
> 
> Gleich nach dem Neustart das gleiche Szenario ... :-((
> OS  - Win2000
> DB  - MySQL 4.1.17
> RAM - 512 MB
> 
> Auf einer Linux-Kiste mit nur 255 MB RAM dauern die
> Selects teilweise bis zu 60 Sekunden, aber sie laufen
> durch.
> Die Tabelle hat 63 Felder, 304.420 Records und belegt
> knapp 0.2 GB auf der Festplatte, ist also IMHO nicht
> gerade riesig ...
> 
> Wie bekommt man MySQL unter Win2k zum Durchlaufen ?

eventuell bringt ein "Optimize table" etwas ...


-- 
Sebastian Mendel

www.sebastianmendel.de
www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet

php::bar PHP Wiki   -   Listenarchive