Share via


DateTimeBin (NoSQL sorgusu)

ŞUNUN IÇIN GEÇERLIDIR: NoSQL

Sağlanan tarih ve saat dizesinin bir bölümünü gruplamanın (veya yuvarlamanın) sonucu olan bir tarih ve saat dizesi değeri döndürür.

Söz dizimi

DateTimeBin(<date_time> , <date_time_part> [, <bin_size>] [, <bin_start_date_time>]) 

Bağımsız değişkenler

Description
date_time ISO 8601 biçiminde YYYY-MM-DDThh:mm:ss.fffffffZeşgüdümlü Evrensel Saat (UTC) tarih ve saat dizesi.
date_time_part ISO 8601 tarih biçimi belirtiminin bir bölümünü temsil eden dize. Bu bölüm, tarihin hangi yönünün depo gözüne kullanılacağını belirtmek için kullanılır. Özellikle, bu bölüm bağımsız değişkeni gruplandırma (veya yuvarlama) için ayrıntı düzeyini temsil eder. Parça için minimum ayrıntı düzeyi gün , maksimum ayrıntı düzeyi ise nanosaniyedir.
bin_size(İsteğe bağlı) Bölmenin boyutunu belirten isteğe bağlı bir sayısal değer. Belirtilmezse, varsayılan değer olur 1.
bin_start_date_time(İsteğe bağlı) ISO 8601 biçiminde YYYY-MM-DDThh:mm:ss.fffffffZisteğe bağlı eşgüdümlü Evrensel Saat (UTC) tarih ve saat dizesi. Bu tarih ve saat bağımsız değişkeni, bölmenin başlangıç tarihini belirtir. Belirtilmezse, varsayılan değer Unix dönemidir 1970-01-01T00:00:00.000000Z.

Not

ISO 8601 biçimi hakkında daha fazla bilgi için bkz. ISO 8601. Unix dönemi hakkında daha fazla bilgi için bkz. Unix zamanı.

Dönüş türleri

ISO 8601 biçiminde YYYY-MM-DDThh:mm:ss.fffffffZbir UTC tarih ve saat dizesi döndürür.

Örnekler

Aşağıdaki örnek , 8 Ocak 2021 tarihini çeşitli değerlere göre 18:35 UTC olarak depolar. Örnek ayrıca depo gözü boyutunu ve depo gözü başlangıç tarih ve saatini de değiştirir.

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"
  }
]

Açıklamalar

  • Bu işlev şu nedenlerle döndürülüyor undefined :
    • Belirtilen tarih ve saat bölümü geçersiz.
    • Bölme boyutu değeri geçerli bir tamsayı değil, sıfır veya negatif.
    • Her iki bağımsız değişkendeki tarih ve saat geçerli bir ISO 8601 tarih ve saat dizesi değildir.
    • Bölme başlangıcı için tarih ve saat, Windows dönemi olan yıldan 1601öncedir.
  • ISO 8601 tarih biçimi, bu işlevle kullanılacak geçerli tarih ve saat parçalarını belirtir: | | Biçim | | --- | --- | | Gün | day, dd, d | | Saat | hour, hh | | Minute | minute, mi, n | | İkinci | second, ss, s | | Milisaniye | millisecond, ms | | Mikrosaniye | microsecond, mcs | | Nanosaniye | nanosecond, ns |