ronny: (PHP) Allgemeine frage zu MySQL Datenbanken und Indexe

Beitrag lesen

hi,

jetzt meine frage: bringen indexe nur im zusammenhang mit der richtigen abfrage was oder bringen sie allgemein bessere performance.

optimal ist es, wenn du genau weißt, nach was( welche felder oder tabellen) am meisten gesucht wird, dort legst du die indexe hin. aber denk dran, wenn du viele änderungen,delete ,etc vorgänge hast, dann werden diese durch indexwerte verlangsamt, da die indexe ja dann neu geordnet werden müssen. wenn du aber immer wieder in der gleichen spalte suchst, dann laß sie weg, da durch zuviele festplattenzugriffe der vorteil der indexierung leicht verloren geht.
ein index funktioniert auch auf keinen fall mit textfeldern und NULL werte zulassende felder

Beispiel 1:
Select * From $table -> alles weitere macht das PHP script

müll

Beispiel 2:
Select * From $table where dies und das

so schon eher, bei OR abfragen muss auch der gesamte index durchlaufen werden, also indexvorteil ist verloren

wenn ich nun auf die wichtigsten spalten einen index lege dann bleibt doch die suchdauer im beispiel 1 gleich und im beispiel 2 verbessert sie sich, ist das richtig?

naja, so ähnlich, gibts viel zu bachten, siehe oben
ciao
ronny