Mailinglisten-Archive |
Hallo Andreas, > also ich bekomm folgendes zurück. > > table type possible_keys key key_len ref rows Extra > teldat ALL 1623616 where used > > > Dies würde aber so wie es dort steht, alle 1,6 Mio Zeilen durchsuchen, > oder??? So ist es. http://www.mysql.com/Manual_chapter/manual_Reference.html#EXPLAIN: "ALL: A full table scan will be done for each combination of rows from the previous tables. This is normally not good if the table is the first table not marked const, and usually very bad in all other cases. You normally can avoid ALL by adding more indexes, so that the row can be retrieved based on constant values or column values from earlier tables." Du bist sicher, dass die Indizes vorhanden sind? (SHOW INDEX FROM tabelle;) Schau Dir mal das Beispiel in der Doku an; es gibt z. B. Probleme, wenn Indizes nicht den gleichen Typ haben (bzw. die gleiche Laenge). > > Ich hab jetzt bei MySQL.ORG, folgendes gelesen: - Changes in release > 3.23.12 > > "Added options USE INDEX (key_list) and IGNORE INDEX > (key_list) as join > parameters in SELECT" - > Was eigentlich bedeutet, daß der Select, bei meiner Datenbankversion > (3.22.23) den INDEX nicht verwendet... > Nein, es sei denn, Du verwendest in deiner Abfrage explizit IGNORE INDEX. Mit der Option USE INDEX kannst Du MySQL Tipps geben, welche Indizes es b e v o r z u g t verwenden soll. http://www.mysql.com/Manual_chapter/manual_Reference.html#JOIN Liegt bei Dir vielleicht der in http://www.mysql.com/Manual_chapter/manual_Performance.html#LEFT_JOIN_optimi zation beschriebene Fall vor? Loesung dorten. Gruesse, Peter --- *** Abmelden von dieser Mailingliste funktioniert per E-Mail *** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe
php::bar PHP Wiki - Listenarchive