Hallo Alle,
nachdem wir in der letzten Woche die mächtigen analytischen funktionen http://www.tutorials.de/forum/relat...rozentualen-anteil-pro-gruppe-oracle-10g.html besprochen haben stoße ich an eine Verständnisfrage:
Meine Testdaten enthalten Zahlen 1 - 6
Jetzt möchte ich zum Beispiel die aktuelle Zelle PLUS die vorhergehende addieren -> das klappt
Jetzt möcht ich zum Beispiel die aktuelle Zelle PLUS vorhergende und der danach addieren -> das klappt
Jetzt möchte ich die Zellen kommulativ addieren und ausgeben -> das klappt
FRAGE: Wie kann ich aber die AUSGABE der z.B. vor der Aktuellen Zelle steuern, ohne über den LAG un LEAD Ansatz, geht das überhaubt mit meinem Ansatz? Ich frage das, weil, es könnten ja auch Datumswerte oder Strings in der zu bewertenden Spalte stehen... Die Schwierigkeit scheint zu sein das man immer eine Agregierungsfunktion vorwählen muß, oder ?
Vielen dank für Eure Hilfe
Grüße
nachdem wir in der letzten Woche die mächtigen analytischen funktionen http://www.tutorials.de/forum/relat...rozentualen-anteil-pro-gruppe-oracle-10g.html besprochen haben stoße ich an eine Verständnisfrage:
Meine Testdaten enthalten Zahlen 1 - 6
Jetzt möchte ich zum Beispiel die aktuelle Zelle PLUS die vorhergehende addieren -> das klappt
Jetzt möcht ich zum Beispiel die aktuelle Zelle PLUS vorhergende und der danach addieren -> das klappt
Jetzt möchte ich die Zellen kommulativ addieren und ausgeben -> das klappt
FRAGE: Wie kann ich aber die AUSGABE der z.B. vor der Aktuellen Zelle steuern, ohne über den LAG un LEAD Ansatz, geht das überhaubt mit meinem Ansatz? Ich frage das, weil, es könnten ja auch Datumswerte oder Strings in der zu bewertenden Spalte stehen... Die Schwierigkeit scheint zu sein das man immer eine Agregierungsfunktion vorwählen muß, oder ?
PHP:
SELECT TYPE_
,Sum(TYPE_) over (ORDER BY TYPE_ ROWS BETWEEN 1 preceding AND 1 following) add_line_before_and_after
,Sum(TYPE_) over (ORDER BY TYPE_ ROWS BETWEEN 1 preceding AND CURRENT ROW) add_line_before
,Sum(TYPE_) over (ORDER BY TYPE_ ROWS BETWEEN unbounded preceding AND CURRENT row) add_line_kommulativ
-- Hier sollte jetzt der Ansatz für die Ausgabe stehen...
, 'inhalt der Zeile vorher/nacher u.s.w.' FRAGE
FROM
(
SELECT 1 AS TYPE_ FROM dual
UNION
SELECT 2 AS TYPE_ FROM dual
UNION
SELECT 3 AS TYPE_ FROM dual
UNION
SELECT 4 AS TYPE_ FROM dual
UNION
SELECT 5 AS TYPE_ FROM dual
UNION
SELECT 6 AS TYPE_ FROM dual
)
Vielen dank für Eure Hilfe
Grüße
Zuletzt bearbeitet: