DateTimeBin (consulta NoSQL)
APLICA-SE A: NoSQL
Retorna um valor de cadeia de caracteres de data e hora que é o resultado da vinculação (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
Description | |
---|---|
date_time |
Uma cadeia de caracteres de data e hora UTC (Tempo Universal Coordenado) no formato YYYY-MM-DDThh:mm:ss.fffffffZ ISO 8601. |
date_time_part |
Uma cadeia de caracteres que representa uma parte de uma especificação de formato de data ISO 8601. Esta parte é usada para indicar qual aspeto da data deve ser compartimentado. Especificamente, esse argumento de parte representa o nível de granularidade para binning (ou arredondamento). A granularidade mínima para a peça é de dias e a granularidade máxima é de nanossegundos. |
bin_size (Opcional) |
Um valor numérico opcional que especifica o tamanho do compartimento. Se não for especificado, o valor padrão será 1 . |
bin_start_date_time (Opcional) |
Uma cadeia de caracteres de data e hora UTC (Tempo Universal Coordenado) opcional no formato YYYY-MM-DDThh:mm:ss.fffffffZ ISO 8601. Este argumento de data e hora especifica a data de início a partir da qual se lixar. Se não for especificado, o valor padrão é a época 1970-01-01T00:00:00.000000Z Unix . |
Nota
Para obter mais informações sobre o formato ISO 8601, consulte ISO 8601. Para obter mais informações sobre a época Unix, consulte Unix time.
Tipos de devolução
Retorna uma cadeia de caracteres de data e hora UTC no formato YYYY-MM-DDThh:mm:ss.fffffffZ
ISO 8601.
Exemplos
O exemplo a seguir agrupa a data de 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"
}
]
Observações
- Esta função retorna
undefined
pelos seguintes motivos:- A parte de data e hora especificada é inválida.
- O valor do tamanho do compartimento não é um número inteiro válido, é zero ou é negativo.
- A data e a hora em ambos os argumentos não são uma cadeia de caracteres de data e hora ISO 8601 válida.
- A data e hora para o início do compartimento precede o ano
1601
, a época do Windows.
- O formato de data ISO 8601 especifica as peças de data e hora válidas a serem usadas com esta função: | | Formato | | --- | --- | | Dia |
day
,dd
,d
| | Hora |hour
,hh
| | Ata |minute
,mi
,n
| | Segundo |second
,ss
,s
| | Milissegundo |millisecond
,ms
| | Microssegundo |microsecond
,mcs
| | Nanossegundo |nanosecond
,ns
|