hash()

Zwraca wartość skrótu dla wartości wejściowej.

Uwaga

  • Funkcja oblicza skróty przy użyciu algorytmu xxhash64, ale może to ulec zmianie. Zaleca się używanie tej funkcji tylko w ramach pojedynczego zapytania.
  • Jeśli konieczne jest utrwalanie połączonego skrótu, zaleca się użycie hash_sha256(), hash_sha1()lub hash_md5() i łączenie skrótów z operatorem bitowym. Te funkcje są bardziej złożone do obliczenia niż hash().

Składnia

hash(źródło [,mod])

Dowiedz się więcej o konwencjach składniowych.

Parametry

Nazwa Typ Wymagane Opis
Źródła Wartość skalarna ✔️ Wartość, która ma być skrótem.
Mod int Wartość modulo, która ma być stosowana do wyniku skrótu, tak aby wartość wyjściowa mieściła się między 0 i mod - 1. Ten parametr jest przydatny do ograniczania zakresu możliwych wartości wyjściowych lub kompresowania danych wyjściowych funkcji skrótu do mniejszego zakresu.

Zwraca

Wartość skrótu źródła. Jeśli określono mod , funkcja zwraca wartość skrótu modulo wartości mod, co oznacza, że dane wyjściowe funkcji będą pozostałą wartością skrótu podzieloną przez mod. Dane wyjściowe będą wartością między 0 i mod - 1, włącznie.

Przykłady

Dane wejściowe ciągu

print result=hash("World")
result
1846988464401551951

Wprowadzanie ciągu z modem

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

Dane wejściowe daty/godziny

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

Używanie skrótu do sprawdzania dystrybucji danych

hash() Użyj funkcji do próbkowania danych, jeśli wartości w jednej z jego kolumn są równomiernie rozłożone. W poniższym przykładzie wartości StartTime są równomiernie rozproszone, a funkcja służy do uruchamiania zapytania na 10% danych.

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