P_H_I_L
Erfahrenes Mitglied
Hallo @ all,
ich habe ein Oracle Performance Problem. Leider finde ich im Internet keine Lösung hierzu. Vielleicht kann mir jemand von euch helfen.
Ich habe eine Tabelle 5Mio Datensätze:
Die Aufgabe:
-----------------
Die Komplette Tabelle Sortieren nach Datum oder ID (Desc), dann das Ergebnis mit Filtern einschränken und anschließend von diesem Ergebnis 500 Zeilen herausschneiden.
Mein Versuch1 - zu langsam:
------------------
Mein Versuch2 - zu langsam:
------------------------------------
Gibt es andere Möglichkeiten um sich den Order by zu sparen?
Bei MySQL macht der Limit 0,500 es genau richtig! Erst wird gefiltert, dann wird von dem Ergebnis die Menge abgeschnitten.... Geht das bei Oracle auch? Doch nur wie?
Danke für die Hilfe...
Lg,
Phil
ich habe ein Oracle Performance Problem. Leider finde ich im Internet keine Lösung hierzu. Vielleicht kann mir jemand von euch helfen.
Ich habe eine Tabelle 5Mio Datensätze:
Die Aufgabe:
-----------------
Die Komplette Tabelle Sortieren nach Datum oder ID (Desc), dann das Ergebnis mit Filtern einschränken und anschließend von diesem Ergebnis 500 Zeilen herausschneiden.
Mein Versuch1 - zu langsam:
------------------
Code:
SELECT xxx.x1,
xxx.y2,
from (SELECT row_number() over(ORDER BY xxx.idnr DESC) zeilencounter,
xxx.x1,
xxx.x2,
from xxx
Where xxx.x1 = '?!'
AND xxx.x2 = '?!'
where zeilencounter between 0 and 500
Mein Versuch2 - zu langsam:
------------------------------------
Code:
SELECT xxx.x1,
xxx.y2,
from (SELECT row_number() over(ORDER BY xxx.idnr DESC) zeilencounter,
xxx.x1,
xxx.x2,
from xxx
Where xxx.x1 = '?!'
AND xxx.x2 = '?!'
where zeilencounter between 0 and 500
Gibt es andere Möglichkeiten um sich den Order by zu sparen?
Bei MySQL macht der Limit 0,500 es genau richtig! Erst wird gefiltert, dann wird von dem Ergebnis die Menge abgeschnitten.... Geht das bei Oracle auch? Doch nur wie?
Danke für die Hilfe...
Lg,
Phil