range operátor

Egyoszlopos értéktáblázatot hoz létre.

Megjegyzés

Ez az operátor nem fogad táblázatos bemenetet.

Syntax

rangecolumnNamefromElkezdtoálljstepLépés

További információ a szintaxis konvenciókról.

Paraméterek

Név Típus Kötelező Leírás
columnName string ✔️ A kimeneti tábla egyetlen oszlopának neve.
Elkezd int, long, real, datetime vagy timespan ✔️ A kimenet legkisebb értéke.
állj int, long, real, datetime vagy timespan ✔️ A kimenetben generált legnagyobb érték, vagy a legmagasabb értékre kötött érték, ha a lépés ezt az értéket lépi túl.
Lépés int, long, real, datetime vagy timespan ✔️ Két egymást követő érték közötti különbség.

Megjegyzés

Az értékek nem hivatkozhatnak egyetlen tábla oszlopára sem. Ha egy bemeneti tábla alapján szeretné kiszámítani a tartományt, használja a tartományfüggvényt az mv-expand operátorral.

Válaszok

Egy oszlopnév nevű egyetlen oszloppal rendelkező tábla, amelynek értékei a start, start+step, ... legfeljebb és egészen a leállításig.

Példák

Az alábbi példa egy táblát hoz létre, amely az elmúlt hét napra, naponta egyszer meghosszabbított aktuális időbélyeg bejegyzéseit tartalmazza.

range LastWeek from ago(7d) to now() step 1d

Kimenet

Múlt hét
2015-12-05 09:10:04.627
2015-12-06 09:10:04.627
...
2015-12-12 09:10:04.627

Az alábbi példa bemutatja, hogyan használhatja az range operátort paraméterekkel, amelyeket aztán kiterjesztenek és táblázatként használnak fel.

let toUnixTime = (dt:datetime) 
{ 
    (dt - datetime(1970-01-01)) / 1s 
};
let MyMonthStart = startofmonth(now()); //Start of month
let StepBy = 4.534h; //Supported timespans
let nn = 64000; // Row Count parametrized
let MyTimeline = range MyMonthHour from MyMonthStart to now() step StepBy
| extend MyMonthHourinUnixTime = toUnixTime(MyMonthHour), DateOnly = bin(MyMonthHour,1d), TimeOnly = MyMonthHour - bin(MyMonthHour,1d)
; MyTimeline | order by MyMonthHour asc | take nn

Kimenet

MyMonthHour MyMonthHourinUnixTime DateOnly TimeOnly
2023-02-01 00:00:00.0000000 1675209600 2023-02-01 00:00:00.0000000
2023-02-01 04:32:02.4000000 1675225922.4 2023-02-01 00:00:00.0000000
2023-02-01 09:04:04.8000000 1675242244.8 2023-02-01 00:00:00.0000000
2023-02-01 13:36:07.2000000 1675258567.2 2023-02-01 00:00:00.0000000
... ... ... ...

Az alábbi példa egy táblát hoz létre egyetlen oszloppal Steps , amelynek a típusa, long és amelynek értékei 1: , 4és 7.

range Steps from 1 to 8 step 3

Az alábbi példa bemutatja, hogyan használható az range operátor egy kis méretű, ad-hoc dimenziótábla létrehozására, amellyel nullákat vezet be, ahol a forrásadatok nem tartalmaznak értékeket.

range TIMESTAMP from ago(4h) to now() step 1m
| join kind=fullouter
  (Traces
      | where TIMESTAMP > ago(4h)
      | summarize Count=count() by bin(TIMESTAMP, 1m)
  ) on TIMESTAMP
| project Count=iff(isnull(Count), 0, Count), TIMESTAMP
| render timechart