Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Tabellen miteinander verknüpfen u. Queries geschickt formulieren

  Alt 21. Jul 2016, 10:26
Die generelle Frage ist, ob man das Ein-/Auschalten nicht einfach mit in die Event-Tabelle schreibt (Es ist ja schließlich auch nur ein Ereignis) mit einer Dauer von null.

Eine zusätzliche Tabelle mit den Events und deren Beschreibung würde ich auch empfehlen, denn dort lassen sich dann auch noch bei Bedarf Meta-Informationen ablegen, die für die weitere Verarbeitung relevant sind.

Für ein konkrete Abfrage benötigt man natürlich auch das konkret gewünschte Ergebnis.

Für die angesprochene Fragestellung reicht für eine qualifizierte Aussage eine Abfrage nicht aus.

Ich erstelle mir für so etwas gerne eine/mehrere Klassen, die beschreiben, was ich denn eigentlich haben möchte. In diesem Fall wohl so etwas wie:
Delphi-Quellcode:
TSomeResult = class
public
  property QueryStart: TDateTime;
  property QueryDuration: TTimeSpan;
  property QueryEvents: TArray<string>;
  
  property SystemUptimeTotal: TTimeSpan;
  property DowntimeTotal: TTimeSpan;
  property SystemEvents: TList<TSystemEvent>;
end;
und das holt man sich dann über
Delphi-Quellcode:
function GetEvents( aFrom, aUntil: TDateTime ): TSomeResult;
function GetEvents( aFrom: TDateTime; aDuration: TTimeSpan ): TSomeResult;
function GetEvents( aFrom, aUntil: TDateTime; aMatchingEvents: array of string ): TSomeResult;
function GetEvents( aFrom: TDateTime; aDuration: TTimeSpan; aMatchingEvents: array of string ): TSomeResult;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat