SELECT
COUNT(*) AS num_elements,
SUM(some_value) AS like_to_sum,
TRUNC(SYSDATE) - TRUNC(your_date) AS rel_date
FROM the_large_table
GROUP BY TRUNC(SYSDATE) - TRUNC(your_date);
Aggregiert auf relativem Daterange in Oracle SQL
Frage
Ich habe eine Tabelle mit mehreren Spalten, auf die ich aggregieren möchte, ich habe bereits an absoluten Tagen zusammengefasst, aber jetzt möchte ich relativ aggregiert. In meiner Tabelle habe ich einen Zeitstempel, und ich möchte nach einem Datumsbereich gruppieren, damit der Tag des Datumsangestellten 0, den Tag nach 1 und so weiter, 0 ist.
SELECT count(*) num_elements, sum(some_value) like_to_sum, reldate
FROM the_large_table
GROUP BY *** what goes here *** reldate.
Kann ich bei der Rückkehr von einer Funktion zusammenhängen oder gibt es eine bessere Möglichkeit, diesem Problem zugehen?
Wenn ich das Ergebnis aus einer Funktion aggregieren kann, gibt es dann noch Funktionen dafür in SQL oder wie könnte dies gelöst werden?
Lösung
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow