Ich schaudere, wenn ich Kommentare sehe, dass vollständige Tabellenscans schlecht und der Indexzugriff gut sind. Vollständige Tabellenscans, Indexbereichsscans, schnelle vollständige Indexscans, verschachtelte Schleifen, Zusammenführungsverknüpfungen, Hashverknüpfungen usw. sind einfach Zugriffsmechanismen, die vom Analysten verstanden und mit der Kenntnis der Datenbankstruktur und dem Zweck einer Abfrage in kombiniert werden müssen um zu einer sinnvollen Schlussfolgerung zu gelangen.
Ein vollständiger Scan ist einfach die effizienteste Methode zum Lesen eines großen Teils der Blöcke eines Datensegments (einer Tabelle oder einer Tabellen- (Unter-) Partition), und obwohl dies häufig auf ein Leistungsproblem hinweisen kann, liegt dies nur im Kontext ob es sich um einen effizienten Mechanismus zur Erreichung der Ziele der Abfrage handelt. Als Data Warehouse- und BI-Mitarbeiter ist mein Warnflag Nummer eins für die Leistung eine indexbasierte Zugriffsmethode und eine verschachtelte Schleife.
Für den Mechanismus zum Lesen eines Erklärungsplans ist die Oracle-Dokumentation eine gute Anleitung: http://download.oracle.com/docs/cd/B28359_01/server.111/b28274/ex_plan.htm#PFGRF009
Lesen Sie auch das Handbuch zur Leistungsoptimierung durch.
Haben Sie auch ein Google für "Kardinalitäts-Feedback", eine Technik, bei der ein Erklärungsplan verwendet werden kann, um die Schätzungen der Kardinalität in verschiedenen Phasen einer Abfrage mit den tatsächlichen Kardinalitäten zu vergleichen, die während der Ausführung auftreten. Ich glaube, Wolfgang Breitling ist der Autor der Methode.
Fazit: Verstehen Sie die Zugriffsmechanismen. Verstehe die Datenbank. Verstehen Sie die Absicht der Abfrage. Faustregeln vermeiden.