Hallo Zusammen,
ich will eine Abfrage in der Oracle-DB machen, in der die Datumswerte mit einer Verschiebung um 7 Stunden berücksichtigt werden.
d.h. ich habe in der Tabelle "table1" für 5 Jahre, für jede Stunde im Jahr einen Wert. Und ich muss diese Werte monatsweise aufsummieren, wobei einen Monat am 01. um 07:00 anfängt und am letzten Tag des Monats um 06:00 endet.
Struktur der Tabelle "table1":
Mit folgender SQL-Abfrage werden zwar Werte monatsweise aufsummiert,
nur wird das spezielles Monatsformat (01.MM.YYYY 07:00 - letzterTag.MM.YYYY 06:00) nicht berücksichtigt:
Gibt es eine Möglichkeit die Zeitverschiebung in der SQL-Abfrage zu berücksichtigen?
ich will eine Abfrage in der Oracle-DB machen, in der die Datumswerte mit einer Verschiebung um 7 Stunden berücksichtigt werden.
d.h. ich habe in der Tabelle "table1" für 5 Jahre, für jede Stunde im Jahr einen Wert. Und ich muss diese Werte monatsweise aufsummieren, wobei einen Monat am 01. um 07:00 anfängt und am letzten Tag des Monats um 06:00 endet.
Struktur der Tabelle "table1":
=================================
Datum | Wert
=================================
2004.01.01 01:00 44
...
2008.01.01 01:00 34
2008.01.01 02:00 24
2008.01.01 03:00 14
...
2009.08.05 00:00 45
Datum | Wert
=================================
2004.01.01 01:00 44
...
2008.01.01 01:00 34
2008.01.01 02:00 24
2008.01.01 03:00 14
...
2009.08.05 00:00 45
nur wird das spezielles Monatsformat (01.MM.YYYY 07:00 - letzterTag.MM.YYYY 06:00) nicht berücksichtigt:
SELECT TO_CHAR(datum, 'YYYY/MM') as jahrmonat, SUM(WERT)
FROM table1
GROUP BY TO_CHAR(datum, 'YYYY/MM')
ORDER BY jahrmonat ASC;
FROM table1
GROUP BY TO_CHAR(datum, 'YYYY/MM')
ORDER BY jahrmonat ASC;
Comment