Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
arrondit les valeurs à l’entier inférieur multiple d’une taille bin donnée.
Fonction fréquemment utilisée en combinaison avec summarize by ....
Si vous avez un ensemble de valeurs dispersés, elles seront regroupées en un plus petit ensemble de valeurs spécifiques.
Les fonctions et
bin()lesfloor()fonctions sont équivalentes
Syntaxe
bin(
valeur,roundTo)
En savoir plus sur les conventions de syntaxe.
Paramètres
| Nom | Catégorie | Requise | Descriptif |
|---|---|---|---|
| valeur | int, long, real, timespan ou datetime | ✔️ | Valeur à arrondir. |
| roundTo | int, long, real ou timespan | ✔️ | Taille de bac qui divise la valeur. |
Retours
Multiple le plus proche de roundTo, inférieur à value. Des valeurs null, une taille de compartiment null ou une taille de compartiment négative génèrent le résultat null.
Exemples
L’exemple suivant illustre la bin() fonction avec des données numériques.
print bin(4.5, 1)
Sortie
| print_0 |
|---|
| 4 |
L’exemple suivant illustre la bin() fonction avec des données d’intervalle de temps.
print bin(time(16d), 7d)
Sortie
| print_0 |
|---|
| 14:00:00:00 |
L’exemple suivant illustre la fonction avec des bin() données datetime.
print bin(datetime(1970-05-11 13:45:07), 1d)
Sortie
| print_0 |
|---|
| 1970-05-11T00:00:00Z |
Lorsqu’il existe des lignes pour les compartiments sans ligne correspondante dans la table, nous vous recommandons de remplir la table avec ces bacs. La requête suivante examine les fortes tempêtes de vent en Californie pendant une semaine en avril. Toutefois, il n’y a aucun événement sur certains jours.
let Start = datetime('2007-04-07');
let End = Start + 7d;
StormEvents
| where StartTime between (Start .. End)
| where State == "CALIFORNIA" and EventType == "Strong Wind"
| summarize PropertyDamage=sum(DamageProperty) by bin(StartTime, 1d)
Sortie
| Heure de début | Dommagesmatériels |
|---|---|
| 2007-04-08T00:00:00Z | 3000 |
| 2007-04-11T00:00:00Z | 1 000 |
| 2007-04-12T00:00:00Z | 105000 |
Pour représenter la semaine complète, la requête suivante posent la table de résultats avec des valeurs Null pour les jours manquants. Voici une explication pas à pas du processus :
- Utilisez l’opérateur
unionpour ajouter d’autres lignes à la table. - L’opérateur
rangegénère une table comportant une seule ligne et une seule colonne. - L’opérateur
mv-expandsur larangefonction crée autant de lignes qu’il y a de bacs entreStartTimeetEndTime. - Utilisez une
PropertyDamagesur0. - L’opérateur
summarizeregroupe les compartiments de la table d’origine vers la table produite par l’expressionunion. Ce processus permet de veiller à ce que la sortie comporte une ligne par classe dont la valeur est égale à zéro ou au nombre d’origine.
let Start = datetime('2007-04-07');
let End = Start + 7d;
StormEvents
| where StartTime between (Start .. End)
| where State == "CALIFORNIA" and EventType == "Strong Wind"
| union (
range x from 1 to 1 step 1
| mv-expand StartTime=range(Start, End, 1d) to typeof(datetime)
| extend PropertyDamage=0
)
| summarize PropertyDamage=sum(DamageProperty) by bin(StartTime, 1d)
Sortie
| Heure de début | Dommagesmatériels |
|---|---|
| 2007-04-07T00:00:00Z | 0 |
| 2007-04-08T00:00:00Z | 3000 |
| 2007-04-09T00:00:00Z | 0 |
| 2007-04-10T00:00:00Z | 0 |
| 2007-04-11T00:00:00Z | 1 000 |
| 2007-04-12T00:00:00Z | 105000 |
| 2007-04-13T00:00:00Z | 0 |
| 2007-04-14T00:00:00Z | 0 |