DateTimeBin (zapytanie NoSQL)
DOTYCZY: NoSQL
Zwraca wartość ciągu daty i godziny, która jest wynikiem kwantowania (lub zaokrąglania) części podanego ciągu daty i godziny.
Składnia
DateTimeBin(<date_time> , <date_time_part> [, <bin_size>] [, <bin_start_date_time>])
Argumenty
opis | |
---|---|
date_time |
Ciąg daty i godziny koordynowanego czasu uniwersalnego (UTC) w formacie YYYY-MM-DDThh:mm:ss.fffffffZ ISO 8601. |
date_time_part |
Ciąg reprezentujący część specyfikacji formatu daty ISO 8601. Ta część służy do wskazywania, który aspekt daty do przedziału. W szczególności ten argument części reprezentuje poziom szczegółowości kwantowania (lub zaokrąglania). Minimalny stopień szczegółowości części to dni , a maksymalny stopień szczegółowości to nanosekundy. |
bin_size (Opcjonalnie) |
Opcjonalna wartość liczbowa określająca rozmiar pojemnika. Jeśli nie zostanie określony, wartość domyślna to 1 . |
bin_start_date_time (Opcjonalnie) |
Opcjonalny ciąg daty i godziny koordynowanej uniwersalnej godziny (UTC) w formacie YYYY-MM-DDThh:mm:ss.fffffffZ ISO 8601. Ten argument daty i godziny określa datę rozpoczęcia do przedziału. Jeśli nie zostanie określona, wartość domyślna to epoka 1970-01-01T00:00:00.000000Z systemu Unix. |
Uwaga
Aby uzyskać więcej informacji na temat formatu ISO 8601, zobacz ISO 8601. Aby uzyskać więcej informacji na temat epoki systemu Unix, zobacz Czas systemu Unix.
Typy zwracane
Zwraca ciąg daty i godziny UTC w formacie YYYY-MM-DDThh:mm:ss.fffffffZ
ISO 8601 .
Przykłady
Poniższy przykład binuje datę 8 stycznia 2021 r. o 18:35 UTC według różnych wartości. Przykład zmienia również rozmiar pojemnika oraz datę i godzinę rozpoczęcia pojemnika.
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"
}
]
Uwagi
- Ta funkcja zwraca
undefined
następujące przyczyny:- Określona część daty i godziny jest nieprawidłowa.
- Wartość rozmiaru pojemnika nie jest prawidłową liczbą całkowitą, ma wartość zero lub jest ujemna.
- Data i godzina w obu argumentach nie są prawidłowym ciągiem daty i godziny ISO 8601.
- Data i godzina rozpoczęcia pojemnika poprzedza rok
1601
, epokę systemu Windows.
- Format daty ISO 8601 określa prawidłowe części daty i godziny do użycia z tą funkcją: | | Format | | --- | --- | | Dzień |
day
,dd
,d
| | Godzina |hour
,hh
| | Minuta |minute
,mi
,n
| | Drugi |second
,ss
,s
| | Milisekundy |millisecond
,ms
| | Mikrosekundy |microsecond
,mcs
| | Nanosekundy |nanosecond
,ns
|