bin()
Az értékeket egy adott dobozméret egész számának többszörösére kerekíti le.
Gyakran használják a következővel summarize by ...
együtt: .
Ha pontozott értékkészlettel rendelkezik, azok egy kisebb, meghatározott értékekből álló készletbe lesznek csoportosítva.
A
bin()
ésfloor()
függvények egyenértékűek
Syntax
bin(
Érték,
roundTo)
További információ a szintaxis konvenciókról.
Paraméterek
Név | Típus | Kötelező | Leírás |
---|---|---|---|
value | int, long, real, timespan vagy datetime | ✔️ | A lefelé kerekíteni kívánt érték. |
roundTo | int, long, real vagy timespan | ✔️ | Az értéket megosztó "raktárhely mérete". |
Válaszok
A roundTo legközelebbi többszöröse az érték alatt. A null értékek, a null rekeszméret vagy a negatív raktárhelyméret null értéket eredményez.
Példák
Numerikus tároló
print bin(4.5, 1)
Kimenet
print_0 |
---|
4 |
Időtartomány
print bin(time(16d), 7d)
Kimenet
print_0 |
---|
14:00:00:00 |
Datetime bin
print bin(datetime(1970-05-11 13:45:07), 1d)
Kimenet
print_0 |
---|
1970-05-11T00:00:00Z |
Táblázat kitöltése null rekeszekkel
Ha vannak olyan sorok a tárolókhoz, amelyekben nincs megfelelő sor a táblázatban, javasoljuk, hogy a táblázatot azokkal a tárolókkal együtt használja. Az alábbi lekérdezés egy áprilisi héten vizsgálja az erős szélvihar-eseményeket Kaliforniában. Egyes napokon azonban nincsenek események.
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)
Kimenet
StartTime | PropertyDamage |
---|---|
2007-04-08T00:00:00Z | 3000 |
2007-04-11T00:00:00Z | 1000 |
2007-04-12T00:00:00Z | 105000 |
A teljes hét megjelenítéséhez az alábbi lekérdezés null értékekkel kitölti az eredménytáblát a hiányzó napokra vonatkozóan. Íme egy részletes magyarázat a folyamatról:
union
Az operátorral további sorokat adhat hozzá a táblához.- Az
range
operátor létrehoz egy táblát, amely egyetlen sorból és oszlopból áll. - A
mv-expand
függvény fölöttirange
operátor annyi sort hoz létre, amennyit a ésEndTime
a közöttiStartTime
tárolók alkotnak. - Használja a
PropertyDamage
következőt:0
. - Az
summarize
operátor az eredeti táblából a kifejezés által létrehozott táblába csoportosítja aunion
raktárhelyeket. Ez a folyamat biztosítja, hogy a kimenet dobozonként egy sort tartalmaz, amelynek értéke nulla vagy az eredeti szám.
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)
Kimenet
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 |
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: