Laden...

Zeitreihen aus SQL DB erzeugen

Erstellt von AnTri vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.532 Views
A
AnTri Themenstarter:in
119 Beiträge seit 2009
vor 12 Jahren
Zeitreihen aus SQL DB erzeugen

Datenbank SQL2008 R2 / Ascii-Files

Hallo,

ich habe eine Db mit einer Tabelle in der immer Wertepaare stehen.
PointID, TimeStamp, Value

(Über die PointID werden die unterschiedlichen Datenpunkte unterschieden)

Jetzt brauche ich für meine Anwendung eine Tablle/Liste, die in einem bestimmten Interval alle Werte in 5min Schritten enthält. Das Problem ist, das die Zeitstempel in der DB nicht synchron sind d.h. die Wertepaare werden in unterschiedlichen Zeitschritten in die DB geschrieben, manche auch nur bei Wertänderung (CoV).

Gibt es einen "fertigen" Algorhytmus der mir aus den vorhanden Daten ein neue Zeitreihe mit fester Schrittweiter generiert und die Werte z.B. intopoliert. Ich habe schon eingige Zeit gegooglet aber wohl nicht nach den richtigen Schlagwörtern.

Falls es das falsche Forum ist, bitte ich um Entschuldigung und eine Korrektur.

Vielen Dank für Eure Hilfe bzw. Eure Tipps.

D
496 Beiträge seit 2005
vor 12 Jahren

kannst du vielleicht ein paar beispieldaten und
dein gewünschtes ergebnis posten.
Ich glaube mit datums/zeitfunktionen, group by & avg
könntest du schon einiges erreichen.

"Programming is similar to sex. If you make a mistake, you have to support it for the rest of your life."

A
AnTri Themenstarter:in
119 Beiträge seit 2009
vor 12 Jahren

Hallo,

da ich Moment (gerade) keine "echten" Daten habe hier ein vereinfachtes Beispiel:

Beispiel Daten aus Datenbank (sortiert nach PointID)

PointID, TimeStamp, Value

1, 01.01.2011 0:15, 22.5
1, 01.01.2011 0:20, 23.0
1, 01.01.2011 0:25, 22,8
...
2, 01.01.2011 0:12, 22.5
2, 01.01.2011 0:17, 22.6
2, 01.01.2011 0:22, 22.9
...
3, 01.01.2011 0:11, 22.0
3, 01.01.2011 0:26, 22.3
3, 01.01.2011 0:33, 22.9

So, ich brauche jetzt ein Zeitreihe die so aussieht (z.B. 5min Zeitschritt):
01.01.2011 0:00 Wert1, Wert2, Wert3
01.01.2011 0:05 Wert1, Wert2, Wert3
01.01.2011 0:10 Wert1, Wert2, Wert3
01.01.2011 0:15 Wert1, Wert2, Wert3
01.01.2011 0:20 Wert1, Wert2, Wert3

D.h. die Werte für die ID2 und ID3 müssen interploiert werden. Daher meine Frage ob es einen "fertigen" Algorhytmus für diese Problemstellung gibt (bin ja bestimmt nicht der einzige mit diesem Problem), oder ob ich mir selber was "basteln" muss.

Danke für Eure Hilfe...