Operátor range
Platí pro: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Vygeneruje tabulku s jedním sloupcem hodnot.
Poznámka:
Tento operátor nepřebírají tabulkový vstup.
Syntaxe
range
columnName from
začínat to
Stop step
krok
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Type | Požadováno | Popis |
---|---|---|---|
columnName | string |
✔️ | Název jednoho sloupce ve výstupní tabulce |
start | int, long, real, datetime nebo timespan | ✔️ | Nejmenší hodnota ve výstupu. |
Stop | int, long, real, datetime nebo timespan | ✔️ | Nejvyšší hodnota vygenerovaná ve výstupu nebo vázaná na nejvyšší hodnotu, pokud krok přes tuto hodnotu provede kroky . |
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, jehož hodnoty jsou počáteční, počáteční +
krok, ... 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é za posledních 7 dnů, jednou za den.
range LastWeek from ago(7d) to now() step 1d
Výstup
LastWeek |
---|
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, jak použít range
operátor s parametry, které jsou pak rozšířeny a spotřebovány 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, 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žívá k zavedení nul, 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