bin_at()

Zaokrągla wartości w dół do pojemnika o stałym rozmiarze z kontrolą punktu początkowego pojemnika.

Składnia

bin_at(Wartość,, bin_sizefixed_point)

Dowiedz się więcej o konwencjach składniowych.

Parametry

Nazwa Typ Wymagane Opis
wartość int, long, real, timespan lub datetime ✔️ Wartość do zaokrąglenia.
bin_size int, long, real lub timespan ✔️ Rozmiar każdego pojemnika.
fixed_point int, long, real, timespan lub datetime ✔️ Stała tego samego typu co wartość wskazująca jedną wartość wartości, która jest stałym punktem , dla którego bin_at(fixed_point, bin_size, fixed_point) == fixed_point.

Uwaga

Jeśli wartość to przedział czasu lub data/godzina, bin_size musi być przedziałem czasu.

Zwraca

Najbliższa wielokrotność bin_size poniżej wartości, przesunięta tak, aby fixed_point została przetłumaczona na siebie.

Przykłady

Wyrażenie Wynik Komentarze
bin_at(6.5, 2.5, 7) 4.5
bin_at(time(1h), 1d, 12h) -12h
bin_at(datetime(2017-05-15 10:20:00.0), 1d, datetime(1970-01-01 12:00:00.0)) datetime(2017-05-14 12:00:00.0) Wszystkie pojemniki będą w południe
bin_at(datetime(2017-05-17 10:20:00.0), 7d, datetime(2017-06-04 00:00:00.0)) datetime(2017-05-14 00:00:00.0) Wszystkie pojemniki będą w niedziele

W poniższym przykładzie zwróć uwagę, że "fixed point" element arg jest zwracany jako jeden z pojemników, a pozostałe pojemniki są wyrównane do niego na podstawie elementu bin_size. Należy również pamiętać, że każdy przedział daty/godziny reprezentuje godzinę rozpoczęcia tego pojemnika:

datatable(Date:datetime, Num:int)[
datetime(2018-02-24T15:14),3,
datetime(2018-02-23T16:14),4,
datetime(2018-02-26T15:14),5]
| summarize sum(Num) by bin_at(Date, 1d, datetime(2018-02-24 15:14:00.0000000)) 

Dane wyjściowe

Date sum_Num
2018-02-23 15:14:00.0000000 4
2018-02-24 15:14:00.0000000 3
2018-02-26 15:14:00.0000000 5