Il tipo di dati data/ora
Il tipo di dati datetime (date) rappresenta un istante, generalmente espresso come data e ora del giorno. I valori sono compresi tra 00:00:00 (mezzanotte), 1 gennaio, 0001 Anno Domini (Common Era) e 11:59:59 P.M., 31 dicembre 9999 A.D. (C.E.) nel calendario gregoriano.
I valori di tempo vengono misurati in unità di 100 nanosecondi denominate tick e una data particolare è il numero di tick a partire dalla mezzanotte del 1 gennaio, 0001 A.D. (C.E.) nel calendario GregorianCalendar (escludendo le tacche che verrebbero aggiunte in secondi bisestili). Ad esempio, un valore ticks di 31241376000000000 rappresenta la data, venerdì 01 gennaio, 0100 12:00:00 mezzanotte. Questo è a volte chiamato "un momento nel tempo lineare".
Un valore datetime in KQL è sempre nel fuso orario UTC. La visualizzazione dei datetime valori in altri fusi orari è responsabilità dell'applicazione utente che visualizza i dati, non una proprietà dei dati stessi. Se è necessario conservare i valori di fuso orario come parte dei dati, è necessario utilizzare colonne separate (fornendo informazioni di offset relative a UTC).
costanti letterali datetime
I valori letterali di tipo datetime hanno la sintassi datetime(valore), dove un numero di formati sono supportati per valore, come indicato dalla seguente tabella:
| Esempio | Valore |
|---|---|
datetime(2015-12-31 23:59:59.9)datetime(2015-12-31) |
Gli orari sono sempre in UTC. Omettendo la data si dà un'ora oggi. |
datetime(null) |
Vedere valori null. |
now() |
L'ora corrente. |
now(-intervallo di tempo) |
now()-intervallo di tempo |
ago(intervallo di tempo) |
now()-intervallo di tempo |
now() e ago() indicano un valore datetime confrontato con il momento in cui Kusto ha iniziato ad eseguire la query. Questi possono apparire più volte nella stessa query e verrà utilizzato un singolo valore per tutti. (In altre parole, espressioni come now(-x) - ago(x) assumono sempre un valore timespan pari a zero).
Formati supportati
Esistono diversi formati per datetime supportati come valori letterali datetime () e la funzione todatetime () .
Si consiglia di utilizzare solo formati ISO 8601.
ISO 8601
| Formato | Esempio |
|---|---|
| %Y - %m -%dT%H: %M:%s%z | 2014-05-25T08:20:03.123456Z |
| %Y - %m -%dT%H: %M:%s | 2014-05-25T08:20:03.123456 |
| %Y - %m -%dT%H: %M | 2014-05-25T08:20 |
| %Y - %m -%d %H: %M:%s%z | 08-11-2014 15:55:55.123456Z |
| %Y - %m -%d %H: %M:%s | 08-11-2014 15:55:55 |
| %Y - %m -%d %H: %M | 08-11-2014 15:55 |
| %Y - %m -%d | 08-11-2014 |
RFC 822
| Formato | Esempio |
|---|---|
| %w, %e %b %r %H: %M:%s %Z | Sab, 8 nov 14 15:05:02 GMT |
| %w, %e %b %r %H: %M:%s | Sab, 8 nov 14 15:05:02 |
| %w, %e %b %r %H: %M | Sab, 8 nov 14 15:05 |
| %w, %e %b %r %H: %M %Z | Sab, 8 nov 14 15:05 GMT |
| %e %b %r %H: %M:%s %Z | 8 Nov 14 15:05:02 GMT |
| %e %b %r %H: %M:%s | 8 novembre 14 15:05:02 |
| %e %b %r %H: %M | 8 novembre 14 15:05 |
| %e %b %r %H: %M %Z | 8 Nov 14 15:05 GMT |
RFC 850
| Formato | Esempio |
|---|---|
| %w, %e-%b- %r %H: %M:%s %Z | Sabato, 08-Nov-14 15:05:02 GMT |
| %w, %e-%b- %r %H: %M:%s | Sabato, 08-Nov-14 15:05:02 |
| %w, %e-%b- %r %H: %M %Z | Sabato, 08-Nov-14 15:05 GMT |
| %w, %e-%b- %r %H: %M | Sabato, 08-Nov-14 15:05 |
| %e-%b- %r %H: %M:%s %Z | 08-Nov-14 15:05:02 GMT |
| %e-%b- %r %H: %M:%s | 08-Nov-14 15:05:02 |
| %e-%b- %r %H: %M %Z | 08-Nov-14 15:05 GMT |
| %e-%b- %r %H: %M | 08-Nov-14 15:05 |
Ordinabile
| Formato | Esempio |
|---|---|
| %Y - %n -%e %H: %M:%s | 08-11-2014 15:05:25 |
| %Y - %n -%e %H: %M:%s %Z | 08-11-2014 15:05:25 GMT |
| %Y - %n -%e %H: %M | 08-11-2014 15:05 |
| %Y - %d -%e %H: %M %Z | 08-11-2014 15:05 GMT |
| %Y - %n -%eT%H: %M:%s | 2014-11-08T15:05:25 |
| %Y - %s -%eT%H: %M:%s %Z | 2014-11-08T15:05:25 GMT |
| %Y - %n -%eT%H: %M | 2014-11-08T15:05 |
| %Y - %n -%eT%H: %M %Z | 2014-11-08T15:05 GMT |