title image


Smiley Brauche Hilfe beim SELECT Statement
Hallo ich hoffe ihr könnt mir weiterhelfen.



Die Tabelle ist wie folgt aufgebaut:



ID (Primary key)

SN (Geräte Serial Number)

begin_timestamp (Zeitpunkt wann das Gerät eingefügt wurde)

end_timestamp (Zeitpunkt wann das Gerät gelöscht wurde, wenn noch aktiv dann steht ein NULL in der Zelle.



Wenn bei einem Gerät Änderungen vorgenommen werden, dann bekommen sie ein end_timestamp gesetzt und werden mit einem neuen Datensatz eingetragen (begin_timestamp = aktuelles Datum und end_timestamp = NULL). Wird das Gerät aus dem System gelöscht wird ebenfalls ein end_timestamp gesetzt, allerdings wird kein neuer Datensatz angelegt. Es kann also ein Gerät mehrmals in der Tabelle stehen.



Ich brauche ein SELECT Statement, dass mir alle Geräte anzeigt mit dem dazugehörigen begin_ und end_timestamp, allerdings interessieren mich nur der erste begin_timestamp und der letzte end_timestamp (bzw. ein NULL Eintrag) eines Gerätes. D.h. ich brauche von jedem Gerät den Zeitraum, wie lange es aktiv war, bzw. das es noch aktiv ist. Die dazwischen liegenden Änderungen sind für mich irrelevant. Es sollte dann also eine Liste rauskommen, wo jedes Gerät einmal auftaucht, also UNIQUE ist.



Leider bekomme ich es mit meinen Grundlagen SQL-Kenntissen nicht so richtig hin. Ich hoffe ihr habt mein vorhaben verstanden und könnt mir vielleicht weiterhelfen.



Als Datenbank wird ORACLE eingesetzt.



Vielen Dank schonmal im vorraus.



Dennis







geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: