Hallo
Ich habe da irgendwie meine Zweifel. Frage: Wieviele Zeilen
sind in Tabelle g10_ebene enthalten? Wieviele Zeilen sind in
Tabelle g10_themen enthalten? Diese beiden Zahlen multipliziert
ergibt die temporäre Tabellengröße, bevor die Selektion mit
WHERE onr=#FORM.gebaeude# loslegt.
Danach ist die Tabelle kleiner oder maximal genauso groß, aber
dazwischen ist sie vermutlich recht groß.
Kann natürlich sein, daß Oracle sowas optimiert (kann auch bei
anderen DBMS sein), aber kann eben auch nicht sein.
wenn Oracle über "onr" einen (hinreichend stark projezierenden) Index findet, wird es wahrscheinlich (rule-based oder cost-based optimizer?) den JOIN so umschreiben, daß die innere Schleife über diesen Index läuft.
Dann käme im Wesentlichen das heraus, was Kerstin sich unter dem Ablauf dieses JOIN vorstellt, denke ich.
Aber sich den execution plan dieser statements mal ausgeben zu lassen, ist sicherlich keine schlechte Idee ...
Wie geht sowas denn? Hab mir ehrlich gesagt noch nie Gedanken darüber gemacht, was zuerst ausgeführt wird. An der Performance selber hab ich nix gemerkt, es sind insgesamt ungefähr 300*16 Zeilen, und es ist auch "nur" fürs Intranet, da wär es nicht ganz so schlimm, aber ich möcht ja auch was dazulernen und vielleicht hab ich mal ein ähnliches Problem, wo es dann stärker drauf ankommt.
Gruss Kerstin