was deine abfrage betrifft, man muss sich vor augen halten, dass ein index kein allheilmittel ist. ein index kann auch eine abfrage verlangsamen. dabei gibt es ein paar handregel, zum beispiel die erwähnte größe der tabelle von dir. bei wenigen datensätzen, macht es einfach keinen sinn, einen index zu benutzen. auch die anzahl der treffer im verhältnis zu der quelle spielt eine rolle. man sagt wenn man nicht mehr als ungefähr 10% der daten sucht, dann lohnt sich noch ein index. willst du aber 50% aller daten einer tabelle auslesen, dann wird der weg über den index eher langsamer sein. auch der inhalt der daten spielt eine rolle, die sogenannte kardinalität. wenn du also daten hast, die sich so gut wie nie unterscheiden, also entweder immer nur einträge in einer spalte ort wie berlin oder hamburg, dann wird ein b-tree index zu keinem gewünschten erfolg führen.
Danke für dein Ausführungen. Ich ging auch von sowas aus. Da die Abfrage von 7 Zeilen (es werden sicher nicht wesentlich mehr) auch nicht wirklich die Performance beeinträchtigen sollte.
Ich bin grad im Moment die SQL Zugriffe einer Anwendung am durchforsten und stosse immer wieder auf filesort und tmpfile. Aber ich mach es genau wie du sagst, immer wieder probieren und steige langsam dahinter.
mysql ist nicht mein steckenpferd, aber manchmakl sind es einfach nur kleinigkeiten. bei problemen mit der performance unter oracle zum beispiel vergessen viele einfach die tabellen regelmäßig vom dbms zu analysieren, sprich das sich das dbms mal den genauen aufbau der tabelle anschaut und sich merkt. auf die informationen kann dann der optimierer zurückgreifen. aber auch da gilt, immer ausprobieren....
Ja, dass hatte ich auch schon irgendwo gelesen und lasse mysql auch immer mal wieder die Tabelle analysieren, wenn ich keine andere Idee mehr habe.
Struppi.
Javascript ist toll (Perl auch!)