range 演算子
適用対象: ✅Microsoft Fabric✅Azure データ エクスプローラー✅Azure Monitor✅Microsoft Sentinel
値が含まれる 1 列のテーブルを生成します。
Note
この演算子は表形式の入力を受け取りません。
構文
range
columnNamefrom
startto
ストップstep
ステップ
構文規則について詳しく知る。
パラメーター
件名 | タイプ | Required | 説明 |
---|---|---|---|
columnName | string |
✔️ | 出力テーブル内の単一列の名前。 |
start | int、long、real、datetime、または timespan | ✔️ | 出力内の最小の値。 |
stop | int、long、real、datetime、または timespan | ✔️ | 出力で生成される最大値。または、この値に対してステップ ステップ 場合は最大値にバインドされます。 |
step | int、long、real、datetime、または timespan | ✔️ | 2 つの連続する値の差。 |
返品
値が start、start+
..) である columnName という 1 つの列を持つテーブル。ストップまで。
例
過去 7 日間の範囲
次の例では、過去 7 日間に 1 日に 1 回、現在のタイム スタンプのエントリを含むテーブルを作成します。
range LastWeek from ago(7d) to now() step 1d
出力
LastWeek |
---|
2015-12-05 09:10:04.627 |
2015-12-06 09:10:04.627 |
... |
2015-12-12 09:10:04.627 |
異なる停止時間を組み合わせる
次の例は、union
演算子を使用して、複数の停止時間を使用するように範囲を拡張する方法を示しています。
let Range1 = range Time from datetime(2024-01-01) to datetime(2024-01-05) step 1d;
let Range2 = range Time from datetime(2024-01-06) to datetime(2024-01-10) step 1d;
union Range1, Range2
| order by Time asc
出力
時間 |
---|
2024-01-04 00:00:00.0000000 |
2024-01-05 00:00:00.0000000 |
2024-01-06 00:00:00.0000000 |
2024-01-07 00:00:00.0000000 |
2024-01-08 00:00:00.0000000 |
2024-01-09 00:00:00.0000000 |
2024-01-10 00:00:00.0000000 |
パラメーターを使用した範囲
次の例では、パラメーターと共に range
演算子を使用する方法を示します。この演算子は、テーブルとして拡張および使用されます。
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
出力
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 |
... | ... | ... | ... |
インクリメントされたステップ
次の例では、型が long
Steps
という 1 つの列を持つテーブルを作成し、1 から 8 の値を 3 ずつインクリメントします。
range Steps from 1 to 8 step 3
| Steps |
|-------|
| 1 |
| 4 |
| 7 |
### Traces over a time range
The following example shows how the `range` operator can be used to create a dimension table that is used to introduce zeros where the source data has no values. It takes timestamps from the last four hours and counts traces for each one minute interval. When there are no traces for a specific interval, the count is zero.
```kusto
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