Operátor range
Vygeneruje tabulku hodnot s jedním sloupcem.
Poznámka
Tento operátor nepřebírají tabulkové vstupy.
Syntax
range
Columnnamefrom
Spustitto
Stopstep
Krok
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Typ | Vyžadováno | Popis |
---|---|---|---|
columnName | string |
✔️ | Název jednoho sloupce ve výstupní tabulce. |
Spustit | int, long, real, datetime nebo timespan | ✔️ | Nejmenší hodnota ve výstupu. |
Stop | int, long, real, datetime nebo timespan | ✔️ | Nejvyšší hodnota generovaná ve výstupu nebo vázaná na nejvyšší hodnotu, pokud krok přejde přes tuto hodnotu. |
Krok | int, long, real, datetime nebo timespan | ✔️ | Rozdíl mezi dvěma po sobě jdoucími hodnotami. |
Poznámka
Hodnoty nemůžou odkazovat na sloupce žádné tabulky. Pokud chcete vypočítat rozsah na základě vstupní tabulky, použijte funkci rozsahu potenciálně s operátorem mv-expand .
Návraty
Tabulka s jedním sloupcem s názvem columnName, jejíž hodnoty jsou start, start+
step, ... až do a do zastavení.
Příklady
Následující příklad vytvoří tabulku s položkami pro aktuální časové razítko prodloužených za posledních sedm dnů, a to jednou za den.
range LastWeek from ago(7d) to now() step 1d
Výstup
Poslední týden |
---|
2015-12-05 09:10:04.627 |
2015-12-06 09:10:04.627 |
... |
2015-12-12 09:10:04.627 |
Následující příklad ukazuje použití operátoru range
s parametry, které se pak rozšíří a spotřebují jako tabulka.
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
Výstup
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 |
... | ... | ... | ... |
Následující příklad vytvoří tabulku s jedním sloupcem s názvem Steps
, jehož typ je long
a jehož hodnoty jsou 1
, 4
a 7
.
range Steps from 1 to 8 step 3
Následující příklad ukazuje, jak range
lze operátor použít k vytvoření malé ad hoc tabulky dimenzí, která se pak použije k zavedení nul tam, kde zdrojová data nemají žádné hodnoty.
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
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro