hash()
Область применения: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Возвращает хэш-значение для входного значения.
Примечание.
- Функция вычисляет хэши с помощью алгоритма xxhash64, но это может измениться. Рекомендуется использовать эту функцию только в одном запросе.
- Если необходимо сохранить объединенный хэш, рекомендуется использовать hash_sha256(), hash_sha1()или hash_md5() и объединить хэши с побитовой оператором. Эти функции являются более сложными для вычисления, чем
hash()
.
Синтаксис
hash(
source [,
mod])
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя (название) | Type | Обязательно | Описание |
---|---|---|---|
source | скаляр | ✔️ | Хэшировать значение. |
mod (модуль) | int |
Значение модуля, которое будет применяться к хэш-результату, чтобы выходное значение было между 0 и mod - 1 . Этот параметр полезен для ограничения диапазона возможных выходных значений или сжатия выходных данных хэш-функции в меньший диапазон. |
Возвраты
Хэш-значение источника. Если задан мод, функция возвращает хэш-значение в моде, то есть выходные данные функции будут оставшейся частью хэш-значения, разделенного модом. Выходные данные будут иметь значение между 0
и mod - 1
включающими.
Примеры
Строковые входные данные
print result=hash("World")
result |
---|
1846988464401551951 |
Строковые входные данные с модом
print result=hash("World", 100)
result |
---|
51 |
Входные данные datetime
print result=hash(datetime("2015-01-01"))
result |
---|
1380966698541616202 |
Использование хэша для проверки распределения данных
Используйте функцию hash()
для данных выборки, если значения в одном из его столбцов равномерно распределяются. В следующем примере значения StartTime равномерно распределяются и функция используется для выполнения запроса на 10 % данных.
StormEvents
| where hash(StartTime, 10) == 0
| summarize StormCount = count(), TypeOfStorms = dcount(EventType) by State
| top 5 by StormCount desc