Compartilhar via


Aritmética datetime/timespan

O Kusto dá suporte à execução de operações aritméticas em valores de tipos datetime e timespan.

Operações com suporte

  • É possível subtrair (mas não adicionar) dois datetime valores para obter um timespan valor que expresse sua diferença. Por exemplo, datetime(1997-06-25) - datetime(1910-06-11) era a idade de Jacques-Yves Cousteau quando ele morreu.

  • É possível adicionar ou subtrair dois timespan valores para obter um timespan valor que seja sua soma ou diferença. Por exemplo, 1d + 2d são três dias.

  • É possível adicionar ou subtrair um timespan valor de um datetime valor. Por exemplo, datetime(1910-06-11) + 1d é a data em que Cousteau completou um dia.

  • É possível dividir dois timespan valores para obter o quociente. Por exemplo, 1d / 5h fornece 4.8. Isso oferece a capacidade de expressar qualquer timespan valor como um múltiplo de outro timespan valor. Por exemplo, para expressar uma hora em segundos, basta dividir 1h por 1s: 1h / 1s (com o resultado óbvio, 3600).

  • Por outro lado, é possível vários valores numéricos (como double e long) por um timespan valor para obter um timespan valor. Por exemplo, é possível expressar uma hora e meia como 1.5 * 1h.

Exemplos

O tempo do Unix, que também é conhecido como hora POSIX ou hora da época do UNIX, é um sistema para descrever um ponto no tempo como o número de segundos decorridos desde 00:00:00 quinta-feira, 1 de janeiro de 1970, UTC (Tempo Universal Coordenado), menos segundos bissextos.

Se os dados incluirem a representação do tempo do Unix como um inteiro ou se você precisar convertê-los, as funções a seguir estarão disponíveis.

Da hora do Unix

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

Saída

result
2019-01-07 21:45:31.0000000

Para a hora do Unix

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

Saída

result
1546897531

Para conversões de tempo de época unix, consulte as seguintes funções: