Sayısal işleçler
, long
ve real
türleri int
sayısal türleri temsil eden türlerdir.
Aşağıdaki işleçler bu tür çiftler arasında kullanılabilir:
İşleç | Açıklama | Örnek |
---|---|---|
+ |
Ekle | 3.14 + 3.14 , ago(5m) + 5m |
- |
Çıkar | 0.23 - 0.22 , |
* |
Çarp | 1s * 5 , 2 * 2 |
/ |
Böl | 10m / 1s , 4 / 2 |
% |
Mod | 4 % 2 |
< |
Less | 1 < 10 , 10sec < 1h , now() < datetime(2100-01-01) |
> |
Büyük | 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ük veya Eşit | 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 real
olur. her iki işlenen de tamsayı türündeyse (int
veya long
) sonuç türünde long
olur.
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.
Çalışma | Sonuç | Description |
---|---|---|
1.0 / 2 |
0.5 |
İşlenenlerden biri türünde real olduğundan sonuç olur real . |
1 / 2.0 |
0.5 |
İşlenenlerden biri türünde real olduğundan sonuç olur real . |
1 / 2 |
0 |
her iki işlenen de türünde int olduğundan sonuç olur int . Tamsayı bölme gerçekleşir ve ondalık kesilerek 0 0.5 beklenebilir. |
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ü. |
Modulo işleci hakkında açıklama
İki sayının modulo her zaman Kusto'da "negatif olmayan küçük bir sayı" döndürür. Bu nedenle, iki sayının ( N % D) modulo şö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 |
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin