DateTimeBin (consulta NoSQL)
APLICA-SE A: NoSQL
Retorna um valor de cadeia de caracteres de data e hora que é o resultado do binning (ou arredondamento) de uma parte da cadeia de caracteres de data e hora fornecida.
Sintaxe
DateTimeBin(<date_time> , <date_time_part> [, <bin_size>] [, <bin_start_date_time>])
Argumentos
Descrição | |
---|---|
date_time |
Uma cadeia de caracteres de data e hora do Tempo Universal Coordenado (UTC) no formato ISO 8601 YYYY-MM-DDThh:mm:ss.fffffffZ . |
date_time_part |
Uma cadeia de caracteres que representa uma parte de uma especificação de formato de data ISO 8601. Essa parte é usada para indicar qual aspecto da data para a lixeira. Especificamente, esse argumento de parte representa o nível de granularidade para binning (ou arredondamento). A granularidade mínima para a parte é em dias e a granularidade máxima é em nanossegundos. |
bin_size (Opcional) |
Um valor numérico opcional que especifica o tamanho da lixeira. Se esse campo não for especificado, o valor padrão será 1 . |
bin_start_date_time (Opcional) |
Uma cadeia de caracteres de data e hora do Tempo Universal Coordenado (UTC) no formato ISO 8601 YYYY-MM-DDThh:mm:ss.fffffffZ . Esse argumento de data e hora especifica a data de início para o bin. Se não for especificado, o valor padrão será o a época do Unix 1970-01-01T00:00:00.000000Z . |
Observação
Para obter mais informações sobre o formato ISO 8601, consulte ISO 8601. Para obter mais informações sobre a época do Unix, confira Hora do Unix.
Tipos de retorno
Retorna uma cadeia de caracteres de data e hora UTC no formato ISO 8601 YYYY-MM-DDThh:mm:ss.fffffffZ
.
Exemplos
O exemplo a seguir faz o bin da data 8 de janeiro de 2021 às 18:35 UTC por vários valores. O exemplo também altera o tamanho do compartimento e a data e hora de início do compartimento.
SELECT VALUE {
binDay: DateTimeBin("2021-01-08T18:35:00.0000000", "dd"),
binHour: DateTimeBin("2021-01-08T18:35:00.0000000", "hh"),
binSecond: DateTimeBin("2021-01-08T18:35:00.0000000", "ss"),
binFiveHours: DateTimeBin("2021-01-08T18:35:00.0000000", "hh", 5),
binSevenDaysUnixEpoch: DateTimeBin("2021-01-08T18:35:00.0000000", "dd", 7),
binSevenDaysWindowsEpoch: DateTimeBin("2021-01-08T18:35:00.0000000", "dd", 7, "1601-01-01T00:00:00.0000000")
}
[
{
"binDay": "2021-01-08T00:00:00.0000000Z",
"binHour": "2021-01-08T18:00:00.0000000Z",
"binSecond": "2021-01-08T18:35:00.0000000Z",
"binFiveHours": "2021-01-08T15:00:00.0000000Z",
"binSevenDaysUnixEpoch": "2021-01-07T00:00:00.0000000Z",
"binSevenDaysWindowsEpoch": "2021-01-04T00:00:00.0000000Z"
}
]
Comentários
- Essa função retorna
undefined
por estes motivos:- A parte de data e hora especificada é inválida.
- O valor do tamanho do compartimento não é um inteiro válido, é zero ou é negativo.
- A data e hora em ambos os argumentos não é uma cadeia de caracteres de data e hora ISO 8601 válida.
- A data e a hora do início do compartimento precedem o ano
1601
, a época do Windows.
- O formato de data ISO 8601 especifica as partes válidas de data e hora a serem usadas com essa função: | | Formato | | | --- | --- | | Dia |
day
,dd
,d
| | Hora |hour
,hh
| Minuto |minute
,mi
,n
| | Segundo |second
,ss
,s
| | Milissegundos |millisecond
,ms
| | Microssegundos |microsecond
,mcs
| Nanossegundos |nanosecond
,ns
|