Jan: 8-fache Laufzeit wenn 'order by' angegeben

Beitrag lesen

Hi,

... Ich die meine 147 Sätze sortiere ich im php ja in einer 1/100.000 Sekunde ... wieso braucht mysql dafür volle zwei Sekunden?

Solche Fragen solltest du immer zu aller erst der Datenbank selber stellen - Stichwort EXPLAIN.

MfG ChrisB

Auch kein schlechter Hinweis, ... kannte ich noch nicht ... die Sache mit dem explain.

Zeigt folgendes

  
id select_type table   type  possible_keys key     key_len  ref               rows   Extra  
1 SIMPLE       f_post   ALL  NULL          NULL    NULL     NULL              54211  Using where; Using filesort  
1 SIMPLE       t2       ref  idpost        idpost   4       DB.f_post.idref   17      Using where  
  
  

Interpretiere ich mal so, dass MYSQL
1. auf  f_post.name='xxxx' // Using where
2. auf das Ergebnis filesort anwendet
3. darauf dann t2.name='yyy' anwendet.

Es gilt also eine Sprachkonstruktion zu finden, mit der mysql den Filesort erst auf des letzte Ergebnis anwendet und nicht schon auf das erste Zwischenergebnis anwendet.

Was die Spalte 'rows' angeht, kapiere ich nicht wieso in der 2. Reihe '17' angegeben ist ... erhalte doch 135 Ergebnisse ... werd wohl weiter das Handbuch eifrig studieren müssen ...

Gruss Jan.