opérateur range
Génère une table de valeurs à une seule colonne.
Notes
Cet opérateur ne prend pas d’entrée tabulaire.
Syntax
range
Columnnamefrom
Commencerto
Arrêterstep
Étape
Découvrez les conventions de syntaxe.
Paramètres
Nom | Type | Obligatoire | Description |
---|---|---|---|
columnName | string |
✔️ | Nom de la colonne unique dans la table de sortie. |
start | int, long, real, datetime ou timespan | ✔️ | Valeur la plus petite de la sortie. |
stop | int, long, real, datetime ou timespan | ✔️ | La valeur la plus élevée générée dans la sortie ou une limite sur la valeur la plus élevée si l’étape dépasse cette valeur. |
step | int, long, real, datetime ou timespan | ✔️ | Différence entre deux valeurs consécutives. |
Notes
Les valeurs ne peuvent pas référencer les colonnes d’une table. Si vous souhaitez calculer la plage en fonction d’une table d’entrée, utilisez potentiellement la fonction de plage avec l’opérateur mv-expand .
Retours
Table avec une colonne unique appelée columnName, dont les valeurs sont start, start+
step, ... jusqu’à et jusqu’à s’arrêter.
Exemples
L’exemple suivant crée une table avec des entrées pour l’horodatage actuel étendu au cours des sept derniers jours, une fois par jour.
range LastWeek from ago(7d) to now() step 1d
Sortie
LastWeek |
---|
2015-12-05 09:10:04.627 |
2015-12-06 09:10:04.627 |
... |
2015-12-12 09:10:04.627 |
L’exemple suivant montre comment utiliser l’opérateur avec des range
paramètres, qui sont ensuite étendus et consommés en tant que table.
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
Sortie
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 |
... | ... | ... | ... |
L’exemple suivant crée une table avec une colonne unique appelée Steps
dont le type est long
et dont les valeurs sont 1
, 4
et 7
.
range Steps from 1 to 8 step 3
L’exemple suivant montre comment l’opérateur range
peut être utilisé pour créer une petite table de dimension ad hoc qui est ensuite utilisée pour introduire des zéros où les données sources n’ont aucune valeur.
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
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour