Operator numerik
Jenis int
, long
, and real
mewakili jenis numerik.
Operator berikut dapat digunakan antara pasangan jenis ini:
Operator | Deskripsi | Contoh |
---|---|---|
+ |
Menambahkan | 3.14 + 3.14 , ago(5m) + 5m |
- |
Pengurangan | 0.23 - 0.22 , |
* |
Pengalian | 1s * 5 , 2 * 2 |
/ |
Pembagian | 10m / 1s , 4 / 2 |
% |
Modulo | 4 % 2 |
< |
Less | 1 < 10 , 10sec < 1h , now() < datetime(2100-01-01) |
> |
Lebih besar | 0.23 > 0.22 , 10min > 1sec , now() > ago(1d) |
== |
Sama | 1 == 1 |
!= |
Tidak sama | 1 != 0 |
<= |
Lebih kecil atau Sama | 4 <= 5 |
>= |
Lebih besar atau Sama | 5 >= 4 |
in |
Sama dengan salah satu elemen | lihat di sini |
!in |
Tidak sama dengan satu pun elemen | lihat di sini |
Catatan
Untuk mengonversi dari satu jenis numerik ke jenis numerik lainnya, gunakan fungsi to*()
. Misalnya, lihat tolong()
dan toint()
.
Jenis aturan untuk operasi aritmatika
Jenis data hasil operasi aritmatika ditentukan oleh jenis data operand. Jika salah satu operand berjenis real
, hasilnya akan berjenis real
. Jika kedua operan berjenis bilangan bulat (int
atau long
), hasilnya akan berjenis long
.
Karena aturan ini, hasil operasi pembagian yang hanya melibatkan bilangan bulat akan dipotong menjadi bilangan bulat, yang mungkin tidak selalu seperti yang Anda inginkan. Untuk menghindari pemotongan, konversikan setidaknya salah satu nilai bilangan bulat untuk real
menggunakan todouble() sebelum melakukan operasi.
Contoh berikut menggambarkan bagaimana jenis operand memengaruhi jenis hasil dalam operasi pembagian.
Operasi | Hasil | Deskripsi |
---|---|---|
1.0 / 2 |
0.5 |
Salah satu operan berjenis real , sehingga hasilnya adalah real . |
1 / 2.0 |
0.5 |
Salah satu operan berjenis real , sehingga hasilnya adalah real . |
1 / 2 |
0 |
Kedua operan berjenis int , sehingga hasilnya adalah int . Pembagian bilangan bulat terjadi dan desimal terpotong 0 , menghasilkan alih-alih 0.5 , seperti yang mungkin diharapkan. |
real(1) / 2 |
0.5 |
Untuk menghindari pemotongan karena pembagian bilangan bulat, salah int satu operan pertama kali dikonversi menjadi real menggunakan real() fungsi . |
Komentar tentang operator modulo
Modulo dari dua angka selalu kembali dalam Kusto "angka non-negatif kecil". Dengan demikian, modulo dari dua angka, N % D, sedemikian rupa sehingga: 0 ≤ (N % D) < abs(D).
Misalnya, kueri berikut:
print plusPlus = 14 % 12, minusPlus = -14 % 12, plusMinus = 14 % -12, minusMinus = -14 % -12
Menghasilkan hasil ini:
plusPlus | minusPlus | plusMinus | minusMinus |
---|---|---|---|
2 | 10 | 2 | 10 |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk