phpbar.de logo

Mailinglisten-Archive

Ladezeit optimieren

Ladezeit optimieren

Alexander Friess mysql_(at)_lists.phpcenter.de
Wed, 25 Apr 2001 08:14:46 +0200


Hi Lilly,
Kein Grund sich zu entschuldigen - aber ... verzeih die Frage:
> Was sind Indices?

Indices oder Indexe sind spezielle Dateien, die zusätzlich zu den normalen
Datenbanktabellen angelegt werden können. Sie können einen Tabellenzugriff
drastisch (!) beschleunigen.
Zum Thema empfehle ich "das" Standardwerk zu mysql (ich habe die deutsche
Übersetzung vom Markt&Technik-Verlag: ISBN 3-8272-5793-X, mysql entwicklung,
implementierung und referenz von paul dubois)

Eine komplette Abhandlung über Indexe ist an dieser Stelle zu umfangreich,
deshalb nur ein kurzes Beispiel:

Tabelle tab mit 2 Feldern: id int, name varchar(100)
Wird häufig über das Feld id mit "select * from tab where id = XXX"
zugegriffen, so ist ein Index ratsam. Anlegen mit "create index <ein Name>
on tab(id)". Das dürfte der Turbo-Schalter sein :-)
Indexe können auch über mehrere Felder angelegt werden; hierbei gilt die
links nach rechts-Regel:

Wenn ich im o. g. Bsp. den Index wie folgt anlegen: "create index <ein Name>
on tab(id, name)", so wird er bei folgenden Zugriffen auch verwendet:
select * from tab where id = XXX
select * from tab where id = XXX and name = YYY
ABER NICHT BEI
select * from tab where name = YYYY

Gruß Alexander

---
*** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive