Christian Kruse: Gechwindigkeitsproblem mit Subquery bei mySQL

Beitrag lesen

你好 j0Shi,

Mir ist noch eingefallen, dass man natürlich vorweg eine zweite Abfrage abschicken könnte:

SELECT COUNT(cat)
FROM artikelliste
GROUP BY cat


>   
> Aber das meintest du ja oben auch?  
  
Ja, so bzw. so ähnlich. Du brauchst noch die cat als Identifizierungsmerkmal dazu.  
  

> Das ganze dann in einen Array und mit array\_search (PHP) in der Schleife den Wert heraussuchen. Ich habe zwar keinerlei Erfahrungen ob array\_search generell schneller ist als ne vernünftige SQL-Query, aber die Anfrage oben dauert nur 0,015 secs und array\_search wird kaum 20 secs dauern, zumal es ja soviele Kats nicht gibt :)  
  
Aber array\_search ist doch gar nicht notwendig. Du baust einen assoziativen Array auf, bei dem cat der Schlüssen ist und count(cat) der Wert. So kannst du problemlos darauf zugreifen. Alternativ: ORDER BY cat. Und schon kannst du herausfinden, an welcher Stelle im Array die Anzahl steht.  
  
再见,  
 克里斯蒂安  

-- 
[Bauer sucht Frau!](http://ck.kennt-wayne.de/bauer-sucht-frau) | [Ich bin ja eigentlich kein Serien-Junkie…](http://ck.kennt-wayne.de/ich-bin-ja-eigentlich-kein-serien-junkie)  
Das Leben ist wie ein Kartenspiel: was dir gegeben wurde, ist vorbestimmt. Doch wie du damit spielst, ist deine Entscheidung.  
  
<http://wwwtech.de/>