range()
Applies to: ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel
Generates a dynamic array holding a series of equally spaced values.
Syntax
range(
start,
stop [,
step])
Learn more about syntax conventions.
Parameters
Name | Type | Required | Description |
---|---|---|---|
start | scalar | ✔️ | The value of the first element in the resulting array. |
stop | scalar | ✔️ | The maximum value of the last element in the resulting array, such that the last value in the series is less than or equal to the stop value. |
step | scalar | The difference between two consecutive elements of the array. The default value for step is 1 for numeric and 1h for timespan or datetime . |
Returns
A dynamic array whose values are: start, start + step, ... up to and including stop. The array is truncated if the maximum number of results allowed is reached.
Note
The range function supports a maximum of 1,048,576 (2^20) results.
Examples
The following example returns an array of numbers from one to eight, with an increment of three.
print r = range(1, 8, 3)
Output
r |
---|
[1,4,7] |
The following example returns an array with all dates from the year 2007.
print r = range(datetime(2007-01-01), datetime(2007-12-31), 1d)
Output
r |
---|
["2007-01-01T00:00:00.0000000Z","2007-01-02T00:00:00.0000000Z","2007-01-03T00:00:00.0000000Z",.....,"2007-12-31T00:00:00.0000000Z"] |
The following example returns an array with numbers between one and three.
print range(1, 3)
Output
print_0 |
---|
[1,2,3] |
The following example returns a range of hours between one hour and five hours.
print range(1h, 5h)
Output
print_0 |
---|
1,000,000 |
["01:00:00","02:00:00","03:00:00","04:00:00","05:00:00"] : |
The following example returns a truncated array as the range exceeds the maximum results limit. The example demonstrates that the limit is exceeded by using the mv-expand operator to expand the array into multiple records and then counting the number of records.
print r = range(1,1000000000)
| mv-expand r
| count
Output
Count |
---|
1,048,576 |