Ich habe eine sehr große Tabelle mit über 1000 Datensätzen und 200 Spalten. Wenn ich versuche, Datensätze abzurufen, die einigen Kriterien in der WHERE
Klausel mit SELECT
Aussage braucht es viel Zeit. Meistens möchte ich aber nur einen einzigen Datensatz auswählen, der den Kriterien in der Anweisung WHERE
Klausel und nicht alle Datensätze.
Ich denke, es sollte eine Möglichkeit geben, nur einen einzigen Datensatz auszuwählen und die Suche zu beenden, was die Abrufzeit minimieren würde. Ich habe versucht ROWNUM=1
en el WHERE
Klausel, aber es hat nicht wirklich funktioniert, weil ich vermute, dass die Maschine immer noch alle Datensätze überprüft, selbst nachdem sie den ersten Datensatz gefunden hat, der mit der WHERE
Kriterien. Gibt es eine Möglichkeit zur Optimierung für den Fall, dass ich nur einige wenige Datensätze auswählen möchte?
Vielen Dank im Voraus.
Bearbeiten:
Ich verwende Oracle 10g. Die Abfrage sieht wie folgt aus,
Select *
from Really_Big_table
where column1 is NOT NULL
and column2 is NOT NULL
and rownum=1;
Dies scheint langsamer zu funktionieren als die Version ohne rownum=1;