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.fffffffZ eş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.fffffffZ isteğ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.fffffffZ
bir 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
|