Aracılığıyla paylaş


Sayısal işleçler

, longve real türleri intsayısal türleri temsil edin. Aşağıdaki işleçler bu tür çiftleri arasında kullanılabilir:

Operator Açıklama Örnek
+ Ekle 3.14 + 3.14, ago(5m) + 5m
- Subtract 0.23 - 0.22,
* Çarpma 1s * 5, 2 * 2
/ Böl 10m / 1s, 4 / 2
% Mod 4 % 2
< Küçüktür 1 < 10, 10sec < 1h, now() < datetime(2100-01-01)
> Büyüktür 0.23 > 0.22, 10min > 1sec, now() > ago(1d)
== Eşittir 1 == 1
!= Eşit değil 1 != 0
<= Küçük veya Eşit 4 <= 5
>= Büyüktür veya Eşittir 5 >= 4
in Öğelerden birine eşittir buraya bakın
!in Öğelerin hiçbirine eşit değildir buraya bakın

Not

Bir sayısal türden diğerine dönüştürmek için işlevleri kullanın to*() . Örnek için bkz. tolong() ve toint().

Aritmetik işlemler için tür kuralları

Aritmetik işlemin sonucunun veri türü işlenenlerin veri türleri tarafından belirlenir. İşlenenlerden biri türündeyse real, sonuç türünde realolur. her iki işlenen de tamsayı türündeyse (int veya long), sonuç türünde longolur.

Bu kurallar nedeniyle, yalnızca tamsayıları içeren bölme işlemlerinin sonucu bir tamsayıya yuvarlanır ve bu her zaman istediğiniz gibi olmayabilir. Kesilmesini önlemek için, işlemi gerçekleştirmeden önce tamsayı değerlerinden real en az birini todouble() kullanmaya dönüştürün.

Aşağıdaki örneklerde işlenen türlerinin bölme işlemlerinde sonuç türünü nasıl etkilediği gösterilmektedir.

İşlem Sonuç Açıklama
1.0 / 2 0.5 İşlenenlerden biri türünde realolduğundan sonuç olur real.
1 / 2.0 0.5 İşlenenlerden biri türünde realolduğundan sonuç olur real.
1 / 2 0 İşlenenlerin her ikisi de türünde intolduğundan sonuç olur int. Tamsayı bölme gerçekleşir ve ondalık kesildiğinden, 0 0.5beklenebilir.
real(1) / 2 0.5 Tamsayı bölme nedeniyle kesilmesini önlemek için, işlenenlerden int biri önce işlevi kullanılarak real() öğesine real dönüştürüldü.

Modül işleci hakkında açıklama

İki sayının moduloması her zaman Kusto'da "küçük negatif olmayan bir sayı" döndürür. Bu nedenle, iki sayının (N % D) modülü şöyledir: 0 ≤ (N % D) < abs(D).

Örneğin, aşağıdaki sorgu:

print plusPlus = 14 % 12, minusPlus = -14 % 12, plusMinus = 14 % -12, minusMinus = -14 % -12

Şu sonucu verir:

plusPlus minusPlus plusMinus minusMinus
2 10 2 10