Share via


Datetime/Timespan-Arithmetik

Kusto unterstützt das Ausführen arithmetischer Operationen für Werte von Typen datetime und timespan.

Unterstützte Vorgänge

  • Man kann zwei datetime Werte subtrahieren (aber nicht hinzufügen), um einen timespan Wert zu erhalten, der ihre Differenz ausdrückt. Zum Beispiel ist, datetime(1997-06-25) - datetime(1910-06-11) wie alt Jacques-Yves Cousteau war, als er starb.

  • Man kann zwei timespan Werte hinzufügen oder subtrahieren, um einen timespan Wert zu erhalten, der ihre Summe oder Differenz ist. Ist z. B 1d + 2d . drei Tage.

  • Man kann einen timespan Wert von einem datetime Wert hinzufügen oder subtrahieren. Beispielsweise ist das Datum, datetime(1910-06-11) + 1d an dem Cousteau einen Tag alt geworden ist.

  • Man kann zwei timespan Werte dividieren, um ihren Quotienten zu erhalten. Gibt z. 1d / 5h B. an 4.8. Dadurch kann ein beliebiger timespan Wert als Vielfaches eines anderen timespan Werts ausgedrückt werden. Um beispielsweise eine Stunde in Sekunden auszudrücken, dividieren 1h Sie einfach durch 1s: 1h / 1s (mit dem offensichtlichen Ergebnis, 3600).

  • Umgekehrt kann man einen numerischen Wert (z double . B. und long) mit einem timespan Wert mehrfachen, um einen timespan Wert abzurufen. Beispielsweise kann man anderthalb Stunden als 1.5 * 1hausdrücken.

Beispiele

Unix-Zeit, die auch als POSIX-Zeit oder UNIX-Epochenzeit bezeichnet wird, ist ein System zur Beschreibung eines Zeitpunkts als Die Anzahl der Sekunden, die seit 00:00:00 Donnerstag, 1. Januar 1970, koordinierte Weltzeit (UTC) abzüglich Schaltsekunden verstrichen sind.

Wenn Ihre Daten die Darstellung der Unix-Zeit als ganze Zahl enthalten oder Sie eine Konvertierung in sie erfordern, sind die folgenden Funktionen verfügbar.

Ab Unix-Zeit

let fromUnixTime = (t: long) { 
    datetime(1970-01-01) + t * 1sec 
};
print result = fromUnixTime(1546897531)

Ausgabe

result
2019-01-07 21:45:31.0000000

Zu Unix-Zeit

let toUnixTime = (dt: datetime) { 
    (dt - datetime(1970-01-01)) / 1s 
};
print result = toUnixTime(datetime(2019-01-07 21:45:31.0000000))

Ausgabe

result
1546897531

Informationen zu Unix-Epochen-Zeitkonvertierungen finden Sie in den folgenden Funktionen: