Berechnung zwischen zwei Zeitpunkten



  • Hallo zusammen,

    ich probiere eine berechnung zwischen zwei gegebenen zeitpunkten (1.1.2006, 10.1.2006) über eine zeitspanne durchzuführen. eigentlich wäre das keine
    grosse sache, allerdings sollte ein tag nicht um 0.00 Uhr beginnen, sondern um 6.00 Uhr.

    probiert habe ich folgendes (um die werte pro "normalen" tag zu erhalten):
    SELECT DISTINCT date_trunc('day', DATUM_SPALTE) AS extr_day, ... viele weitere felder ...
    SUM(... lange berechnung ...)
    WHERE DATUM_SPALTE >= start_datetime AND DATUM_SPALTE <= end_datetime
    GROUP BY ... felder ...

    um das zeitintervall anzugeben, habe ich folgendes in den WHERE block eingefügt:
    AND DATUM_SPALTE BETWEEN extr_day + interval '6 hour' AND extr_day + interval '30 hour'

    was unbrauchbare werte lieferte... irgendwie stehe ich auf dem schlauch 😞

    wäre für jede hilfe dankbar

    gruss
    frank



  • Welches Datenbanksystem?
    Welchen Feldtyp hat deine Spalte DATUM_SPALTE?



  • Hallo,

    ich benutze Postgresql und DATUM_SPALTE hat den Typ timestamp.

    gruss



  • PostgreSQL unterstützt die komplette Sammlung an Datums- und Zeittypen aus dem SQL-Standard.

    Details und Beispiele zur Intervall-Berechnung findest Du daher auf (fast) jeder SQL-Site, beispielsweise hier:

    http://www.postgresql.org/files/documentation/books/pghandbuch/html/datatype-datetime.html

    http://schmidt-webdesign.net/


Log in to reply