Aracılığıyla paylaş


bin()

Şunlar için geçerlidir: ✅Microsoft Fabric✅Azure Veri Gezgini Azure İzleyiciMicrosoft Sentinel

Değerleri, belirli bir bölme boyutunun tamsayı katına yuvarlar.

ile summarize by ...birlikte sık kullanılır. Dağıtılmış bir değer kümeniz varsa, bunlar daha küçük bir belirli değer kümesinde gruplandırılır.

bin() ve floor() işlevleri eşdeğerdir

Sözdizimi

bin(roundTo değeri,)

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Zorunlu Açıklama
value int, long, real, timespan veya datetime ✔️ Aşağı yuvarlama değeri.
roundTo int, long, real veya zaman aralığı ✔️ Değeri bölen "bölme boyutu".

Döndürülenler

Değerin altındaki roundTo öğesinin en yakın katı. Null değerler, null bölme boyutu veya negatif bölme boyutu null ile sonuçlanır.

Örnekler

Sayısal bölme

print bin(4.5, 1)

Çıktı

print_0
4

Zaman aralığı bölmesi

print bin(time(16d), 7d)

Çıktı

print_0
14:00:00:00

Tarih saat kutusu

print bin(datetime(1970-05-11 13:45:07), 1d)

Çıktı

print_0
1970-05-11T00:00:00Z

Tabloyu null bölmelerle doldurma

Tabloda karşılık gelen satırı olmayan bölmeler için satırlar olduğunda, tabloyu bu bölmelerle doldurmanızı öneririz. Aşağıdaki sorgu, Nisan ayında bir hafta boyunca California'daki güçlü rüzgar fırtınası olaylarını arar. Ancak, bazı günlerde hiçbir olay yoktur.

let Start = datetime('2007-04-07');
let End = Start + 7d;
StormEvents
| where StartTime between (Start .. End)
| where State == "CALIFORNIA" and EventType == "Strong Wind"
| summarize PropertyDamage=sum(DamageProperty) by bin(StartTime, 1d)

Çıktı

StartTime PropertyDamage
2007-04-08T00:00:00Z 3000
2007-04-11T00:00:00Z 1000
2007-04-12T00:00:00Z 105000

Tam haftayı temsil etmek için aşağıdaki sorgu, sonuç tablosunu eksik günlerin null değerleriyle doldurur. İşlemin adım adım açıklaması aşağıdadır:

  1. Tabloya union daha fazla satır eklemek için işlecini kullanın.
  2. işleci, range tek bir satır ve sütun içeren bir tablo oluşturur.
  3. mv-expand işlevinin range üzerindeki işleç, ile EndTimearasında StartTime bölmeler olduğu kadar çok satır oluşturur.
  4. bir PropertyDamage kullanın 0.
  5. İşleç, summarize özgün tablodaki bölmeleri ifade tarafından üretilen tabloya gruplandırır union . Bu işlem, çıkışın değeri sıfır veya özgün sayı olan bölme başına bir satır olmasını sağlar.
let Start = datetime('2007-04-07');
let End = Start + 7d;
StormEvents
| where StartTime between (Start .. End)
| where State == "CALIFORNIA" and EventType == "Strong Wind"
| union (
    range x from 1 to 1 step 1
    | mv-expand StartTime=range(Start, End, 1d) to typeof(datetime)
    | extend PropertyDamage=0
    )
| summarize PropertyDamage=sum(DamageProperty) by bin(StartTime, 1d)

Çıktı

StartTime PropertyDamage
2007-04-07T00:00:00Z 0
2007-04-08T00:00:00Z 3000
2007-04-09T00:00:00Z 0
2007-04-10T00:00:00Z 0
2007-04-11T00:00:00Z 1000
2007-04-12T00:00:00Z 105000
2007-04-13T00:00:00Z 0
2007-04-14T00:00:00Z 0