Share via


range-operatorn

Genererar en tabell med en kolumn med värden.

Anteckning

Den här operatorn tar inte några tabellindata.

Syntax

rangeColumnnamefromBörjatoStannastepSteg

Läs mer om syntaxkonventioner.

Parametrar

Namn Typ Obligatorisk Beskrivning
columnName string ✔️ Namnet på den enskilda kolumnen i utdatatabellen.
Börja int, long, real, datetime eller timespan ✔️ Det minsta värdet i utdata.
Stanna int, long, real, datetime eller timespan ✔️ Det högsta värdet som genereras i utdata eller ett bundet på det högsta värdet om steg steg över det här värdet.
Steg int, long, real, datetime eller timespan ✔️ Skillnaden mellan två på varandra följande värden.

Anteckning

Värdena kan inte referera till kolumnerna i någon tabell. Om du vill beräkna intervallet baserat på en indatatabell använder du intervallfunktionen potentiellt med operatorn mv-expand .

Returer

En tabell med en enda kolumn med namnet columnName, vars värden är start, startsteg+, ... upp till och tills stopp.

Exempel

I följande exempel skapas en tabell med poster för den aktuella tidsstämpeln som utökats under de senaste sju dagarna, en gång om dagen.

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

Resultat

LastWeek
2015-12-05 09:10:04.627
2015-12-06 09:10:04.627
...
2015-12-12 09:10:04.627

I följande exempel visas hur du använder operatorn range med parametrar, som sedan utökas och används som en tabell.

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

Resultat

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
... ... ... ...

I följande exempel skapas en tabell med en enda kolumn med namnet Steps vars typ är long och vars värden är 1, 4och 7.

range Steps from 1 to 8 step 3

I följande exempel visas hur operatorn range kan användas för att skapa en liten, ad hoc-dimensionstabell som sedan används för att introducera nollor där källdata inte har några värden.

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