Compartilhar via


DATETIMEBIN – Linguagem de consulta no Cosmos DB (no Azure e no Fabric)

A DATETIMEBIN função 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>])

Arguments

Description
date_time Uma cadeia de caracteres de data e hora UTC (Tempo Universal Coordenado) no formato YYYY-MM-DDThh:mm:ss.fffffffZISO 8601.
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 a ser usada.
bin_size 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 Uma cadeia de caracteres de data e hora UTC opcional no formato ISO 8601. Se não for especificado, o valor padrão será a época 1970-01-01T00:00:00.000000Zunix.

Tipos de retorno

Retorna um valor de cadeia de caracteres de data e hora.

Exemplos

Esta seção contém exemplos de como usar este constructo de linguagem de consulta.

Valores de data e hora da lixeira

Neste exemplo, a DATETIMEBIN função é usada para armazenar uma data e hora por dia, hora, segundo e com tamanhos de compartimento personalizados e datas de início.

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

  • Essa função retorna undefined por estes motivos:
  • A parte de data e hora especificada é inválida.
  • O valor do tamanho da lixeira não é um inteiro válido, é zero ou é negativo.
  • A data e hora em qualquer argumento não é uma cadeia de caracteres de data e hora do ISO 8601 válida.
  • A data e a hora do início da lixeira precedem o ano '1601', a época do Windows.
  • O formato de data ISO 8601 especifica as partes de data e hora válidas a serem usadas com essa função: | | Formato | | --- | --- | | Ano | year, yyyyyy | | Mês | month, mmm | | Dia | day, ddd | | Hora | hour, hh | | Minuto | minute, min | | Segundo | second, ss| s | Milissegundo | millisecond, ms | | Microssegundo | microsecond, mcs | | Nanossegundo | nanosecond,ns |