Aracılığıyla paylaş


DateTimeBin (NoSQL sorgusu)

UYGULANANLAR: NoSQL

Sağlanan tarih ve saat dizesinin bir bölümünü gruplandırma (veya yuvarlama) 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

Açıklama
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 taneciklik ise nanosaniyedir.
bin_size(İsteğe bağlı) Bölmenin boyutunu belirten isteğe bağlı 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, başlangıç tarihini 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 18:35 UTC'de çeşitli değerlere göre depolar. Örnek, bölme boyutunu ve bölme başlangıç tarihini 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 bölümlerini 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 |