Bagikan melalui


hash()

Mengembalikan nilai hash untuk nilai input.

Catatan

  • Fungsi menghitung hash menggunakan algoritma xxhash64, tetapi ini dapat berubah. Disarankan untuk hanya menggunakan fungsi ini dalam satu kueri.
  • Jika Anda perlu mempertahankan hash gabungan, disarankan untuk menggunakan hash_sha256(), hash_sha1(), atau hash_md5() dan menggabungkan hash dengan operator bitwise. Fungsi-fungsi ini lebih kompleks untuk dihitung daripada hash().

Sintaks

hash(source [, mod])

Pelajari selengkapnya tentang konvensi sintaksis.

Parameter

Nama Tipe Wajib Deskripsi
sumber skalar ✔️ Nilai yang akan di-hash.
mod int Nilai modulo yang akan diterapkan ke hasil hash, sehingga nilai output antara 0 dan mod - 1. Parameter ini berguna untuk membatasi rentang nilai output yang mungkin atau untuk mengompresi output fungsi hash menjadi rentang yang lebih kecil.

Mengembalikan

Nilai hash source. Jika mod ditentukan, fungsi mengembalikan nilai hash modulo nilai mod, yang berarti bahwa output fungsi akan menjadi sisa nilai hash yang dibagi dengan mod. Output akan menjadi nilai antara 0 dan mod - 1, inklusif.

Contoh

Input string

print result=hash("World")
hasil
1846988464401551951

Input string dengan mod

print result=hash("World", 100)
hasil
51

Input tanggalwaktu

print result=hash(datetime("2015-01-01"))
hasil
1380966698541616202

Menggunakan hash untuk memeriksa distribusi data

hash() Gunakan fungsi untuk mengambil sampel data jika nilai di salah satu kolomnya didistribusikan secara seragam. Dalam contoh berikut, nilai StartTime didistribusikan secara seragam dan fungsinya digunakan untuk menjalankan kueri pada 10% data.

StormEvents 
| where hash(StartTime, 10) == 0
| summarize StormCount = count(), TypeOfStorms = dcount(EventType) by State 
| top 5 by StormCount desc