El hash de NULL es NULL. Para obtener un hash no NULL de una columna Nullable, envuélvala en una tupla:
Para calcular el hash de todo el contenido de una tabla, use
sum(cityHash64(tuple(*))) (u otra función hash). tuple garantiza que no se omitan las filas con valores NULL. sum garantiza que el orden de las filas no importe.BLAKE3
Introducido en: v22.10.0 Calcula una cadena hash BLAKE3 y devuelve el conjunto de bytes resultante como FixedString. Esta función hash criptográfica está integrada en ClickHouse mediante la biblioteca BLAKE3 de Rust. La función es bastante rápida y ofrece un rendimiento aproximadamente dos veces superior al de SHA-2, mientras genera hashes de la misma longitud que SHA-256. Devuelve un hash BLAKE3 como un array de bytes de tipo FixedString(32). Sintaxismessage— La cadena de entrada para calcular el hash.String
FixedString(32)
Ejemplos
hash
Query
Response
MD4
Introducido en: v21.11.0 Calcula el hash MD4 de la cadena especificada. Sintaxiss— La cadena de entrada para calcular el hash.String
FixedString(16)
Ejemplos
Ejemplo de uso
Query
Response
MD5
Introducido en: v1.1.0 Calcula el hash MD5 de la cadena dada. Sintaxiss— La cadena de entrada para calcular el hash.String
FixedString(16)
Ejemplos
Ejemplo de uso
Query
Response
RIPEMD160
Introducido en: v24.10.0 Calcula el hash RIPEMD-160 de la cadena dada. Sintaxiss— La cadena de entrada para calcular el hash.String
FixedString(20)
Ejemplos
Ejemplo de uso
Query
Response
SHA1
Introducido en: v1.1.0 Calcula el hash SHA1 de la cadena especificada. Sintaxiss— La cadena de entrada para calcular elhashString
FixedString(20)
Ejemplos
Ejemplo de uso
Query
Response
SHA224
Introducido en: v1.1.0 Calcula el hash SHA224 de la cadena proporcionada. Sintaxiss— El valor de entrada para calcular el hash.String
FixedString(28)
Ejemplos
Ejemplo de uso
Query
Response
SHA256
Introducido en: v1.1.0 Calcula el hash SHA256 de la cadena proporcionada. Sintaxiss— La cadena de entrada para calcular el hash.String
FixedString(32)
Ejemplos
Ejemplo de uso
Query
Response
SHA384
Introducido en: v1.1.0 Calcula el hash SHA384 de la cadena proporcionada. Sintaxiss— La cadena de entrada para calcular el hash.String
FixedString(48)
Ejemplos
Ejemplo de uso
Query
Response
SHA512
Introducido en: v1.1.0 Calcula el hash SHA512 de la cadena proporcionada. Sintaxiss— La cadena de entrada para calcular elhashString
FixedString(64)
Ejemplos
Ejemplo de uso
Query
Response
SHA512_256
Introducido en: v1.1.0 Calcula el hash SHA512_256 de la cadena especificada. Sintaxiss— La cadena de entrada para calcular el hash.String
FixedString(32)
Ejemplos
Ejemplo de uso
Query
Response
URLHash
Introducido en: v1.1.0 Una función hash no criptográfica rápida y de calidad razonable para una cadena obtenida de una URL mediante algún tipo de normalización. Esta función hash tiene dos modos:
Sintaxis
url— Cadena de URL cuyo hash se calcula.StringN— Opcional. Nivel en la jerarquía de la URL.(U)Int*
url. UInt64
Ejemplos
Ejemplo de uso
Query
Response
Query
Response
cityHash64
Introducido en: v1.1.0 Produce un valor hash de 64 bits de CityHash. Se trata de una función hash rápida no criptográfica. Utiliza el algoritmo CityHash para los parámetros de cadena y una función hash rápida no criptográfica específica de la implementación para los parámetros con otros tipos de datos. La función utiliza el combinador CityHash para obtener los resultados finales.Google cambió el algoritmo de CityHash después de que se añadiera a ClickHouse.
En otras palabras, cityHash64 de ClickHouse y la versión upstream de CityHash de Google ahora producen resultados diferentes.
cityHash64 de ClickHouse corresponde a CityHash v1.0.2.
Los valores hash calculados pueden coincidir para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a tipos enteros de distinto tamaño,
Tuple con nombre y sin nombre con los mismos datos, Map y el tipo Array(Tuple(key, value)) correspondiente con los mismos datos.arg1[, arg2, ...]— Un número variable de argumentos de entrada sobre los que se calcula el hash.Any
UInt64
Ejemplos
Ejemplo de llamada
Query
Response
Query
Response
farmFingerprint64
Introducido en: v20.12.0 Produce un valor FarmHash de 64 bits usando el métodoFingerprint64.
Los valores hash calculados pueden ser iguales para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a tipos enteros de distinto tamaño,
Tuple con nombre y sin nombre con los mismos datos, Map y el tipo correspondiente Array(Tuple(key, value)) con los mismos datos.arg1[, arg2, ...]— Un número variable de argumentos de entrada para los que se debe calcular el hash.Any
UInt64
Ejemplos
Ejemplo de uso
Query
Response
farmHash64
Introducido en: v1.1.0 Genera un FarmHash de 64 bits con el métodoHash64.
Los valores hash calculados pueden coincidir para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a tipos enteros de distinto tamaño, a
Tuple con nombre y sin nombre con los mismos datos, y a Map y el tipo correspondiente Array(Tuple(key, value)) con los mismos datos.arg1[, arg2, ...]— Un número variable de argumentos de entrada para los que se debe calcular el hash.Any
UInt64
Ejemplos
Ejemplo de uso
Query
Response
gccMurmurHash
Introducido en: v20.1.0 Calcula el hash de 64 bits MurmurHash2 del valor de entrada usando la misma semilla que utiliza GCC. Es portable entre las compilaciones de Clang y GCC. Sintaxisarg1[, arg2, ...]— Un número variable de argumentos sobre los que calcular el hash.Any
UInt64
Ejemplos
Ejemplo de uso
Query
Response
halfMD5
Introducido en: v1.1.0 Interpreta todos los parámetros de entrada como cadenas y calcula el valor hash MD5 para cada uno de ellos. Luego combina los hashes, toma los primeros 8 bytes del hash de la cadena resultante y los interpreta como UInt64 en orden de bytes big-endian. La función es relativamente lenta (5 millones de cadenas cortas por segundo por núcleo de procesador). Considere usar en su lugar la funciónsipHash64.
La función acepta un número variable de parámetros de entrada.
Los argumentos pueden ser de cualquiera de los tipos de datos compatibles.
Para algunos tipos de datos, el valor calculado por la función hash puede ser el mismo para los mismos valores, incluso si los tipos de los argumentos difieren (enteros de distinto tamaño, Tuple con nombre y sin nombre con los mismos datos, Map y el tipo Array(Tuple(key, value)) correspondiente con los mismos datos).
Sintaxis
arg1[, arg2, ..., argN]— Número variable de argumentos para los que se calcula el hash.Any
UInt64 en orden de bytes big-endian. UInt64
Ejemplos
Ejemplo de uso
Query
Response
hiveHash
Introducido en: v20.1.0 Calcula un “HiveHash” a partir de una cadena. No es más queJavaHash con los bits de signo puestos a cero.
Esta función se utiliza en Apache Hive en versiones anteriores a la 3.0.
Sintaxis
arg— Cadena de entrada para calcular el hash.String
Int32
Ejemplos
Ejemplo de uso
Query
Response
icebergHash
Introducido en: v25.5.0 Implementa la lógica de la transformación hash de Iceberg Sintaxisvalue— Valor de entrada del que se calculará el hash deIntegeroBooloDecimaloFloat*oStringoFixedStringoUUIDoDateoTimeoDateTime
Int32
Ejemplos
Ejemplo
Query
Response
intHash32
Introducido en: v1.1.0 Calcula un hash de 32 bits a partir de un entero. La función hash es relativamente rápida, pero no es una función hash criptográfica. Sintaxisarg— Entero al que se aplica la función hash.(U)Int*
UInt32
Ejemplos
Ejemplo de uso
Query
Response
intHash64
Introducido en: v1.1.0 Calcula un hash de 64 bits para un entero. La función hash es relativamente rápida (incluso más rápida queintHash32), pero no es una función hash criptográfica.
Sintaxis
int— Entero del que se calcula el hash.(U)Int*
UInt64
Ejemplos
Ejemplo de uso
Query
Response
javaHash
Introducido en: v20.1.0 Calcula JavaHash a partir de:Java solo admite calcular el hash de enteros con signo,
por lo que, si quiere calcular el hash de enteros sin signo, debe convertirlos mediante CAST a los tipos con signo de ClickHouse adecuados.
arg— Valor de entrada para calcular el hash.Any
arg Int32
Ejemplos
Ejemplo de uso 1
Query
Response
Query
Response
javaHashUTF16LE
Introducido en: v20.1.0 Calcula JavaHash de una cadena, asumiendo que contiene bytes que representan una cadena codificada en UTF-16LE. Sintaxisarg— Una cadena con codificación UTF-16LE.String
Int32
Ejemplos
Ejemplo de uso
Query
Response
jumpConsistentHash
Introducido en: v1.1.0 Calcula el jump hash consistente de un entero. SintaxisInt32
Ejemplos
Ejemplo de uso
Query
Response
kafkaMurmurHash
Introducido en: v23.4.0 Calcula el hash MurmurHash2 de 32 bits del valor de entrada usando la misma semilla que Kafka y sin el bit más significativo, para ser compatible con Default Partitioner. Sintaxisarg1[, arg2, ...]— Una cantidad variable de parámetros cuyo hash se calcula.Any
UInt32
Ejemplos
Ejemplo de uso
Query
Response
keccak256
Introducido en: v25.4.0 Calcula el hash criptográfico Keccak-256 de la cadena proporcionada. Esta función hash se utiliza ampliamente en aplicaciones de blockchain, en particular en Ethereum. Sintaxismessage— La cadena de entrada para calcular el hash.String
FixedString(32)
Ejemplos
Ejemplo de uso
Query
Response
kostikConsistentHash
Introducido en: v22.6.0 Un algoritmo de hash consistente con complejidad temporal y espacial O(1), de Konstantin ‘Kostik’ Oblakov. Solo es eficiente conn <= 32768.
Sintaxis
yandexConsistentHash
Argumentos
Valor devuelto
Devuelve el valor hash calculado. UInt16
Ejemplos
Ejemplo de uso
Query
Response
metroHash64
Introducido en: v1.1.0 Genera un valor hash de 64 bits de MetroHash.Los valores hash calculados pueden ser iguales para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a tipos enteros de distinto tamaño,
Tuple con nombre y sin nombre con los mismos datos, Map y el tipo correspondiente Array(Tuple(key, value)) con los mismos datos.arg1[, arg2, ...]— Un número variable de argumentos de entrada para calcular el hash.Any
UInt64
Ejemplos
Ejemplo de uso
Query
Response
murmurHash2_32
Introducido en: v18.5.0 Calcula el hash MurmurHash2 del valor de entrada.Los valores hash calculados pueden coincidir para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a tipos enteros de distinto tamaño, a
Tuple con y sin nombre con los mismos datos, y a Map y el tipo Array(Tuple(key, value)) correspondiente con los mismos datos.arg1[, arg2, ...]— Una cantidad variable de argumentos de entrada para los que se calcula el hash.Any
UInt32
Ejemplos
Ejemplo de uso
Query
Response
murmurHash2_64
Introducido en: v18.10.0 Calcula el hash MurmurHash2 del valor de entrada.Los valores hash calculados pueden coincidir para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a tipos enteros de distinto tamaño,
Tuple con nombre y sin nombre con los mismos datos, Map y el tipo correspondiente Array(Tuple(key, value)) con los mismos datos.arg1[, arg2, ...]— Un número variable de argumentos de entrada para los que se calcula el hash.Any
UInt64
Ejemplos
Ejemplo de uso
Query
Response
murmurHash3_128
Introducido en: v18.10.0 Calcula el hash de 128 bits MurmurHash3 del valor de entrada. Sintaxisarg1[, arg2, ...]— Un número variable de argumentos de entrada para los que se calcula el hash.Any
MurmurHash3 de 128 bits calculado a partir de los argumentos de entrada. FixedString(16)
Ejemplos
Ejemplo de uso
Query
Response
murmurHash3_32
Introducido en: v18.10.0 Genera un valor hash de MurmurHash3.Los valores hash calculados pueden ser iguales para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a tipos enteros de distinto tamaño,
Tuple con nombre y sin nombre con los mismos datos, Map y el tipo correspondiente Array(Tuple(key, value)) con los mismos datos.arg1[, arg2, ...]— Un número variable de argumentos de entrada a partir de los cuales se calcula el hash.Any
UInt32
Ejemplos
Ejemplo de uso
Query
Response
murmurHash3_64
Introducido en: v18.10.0 Calcula el hash MurmurHash3 del valor de entrada.Los valores hash calculados pueden coincidir para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a tipos enteros de distinto tamaño,
Tuple con nombre y sin nombre con los mismos datos, Map y el tipo Array(Tuple(key, value)) correspondiente con los mismos datos.arg1[, arg2, ...]— Una cantidad variable de argumentos de entrada cuyo hash se calcula.Any
UInt64
Ejemplos
Ejemplo de uso
Query
Response
ngramMinHash
Introducido en: v21.1.0 Divide una cadena ASCII en n-gramas dengramsize símbolos, calcula valores hash para cada n-grama y devuelve una tupla con esos hashes.
Usa los hashnum hashes mínimos para calcular el hash mínimo y los hashnum hashes máximos para calcular el hash máximo.
Distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con tupleHammingDistance.
Para dos cadenas, si los hashes devueltos son los mismos en ambas, entonces esas cadenas son iguales.
Sintaxis
string— Cadena sobre la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama, cualquier valor entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. El número de hashes mínimos y máximos que se usan para calcular el resultado, cualquier valor entre1y25. El valor predeterminado es6.UInt8
Tuple
Ejemplos
Ejemplo de uso
Query
Response
ngramMinHashArg
Introducido en: v21.1.0 Divide una cadena ASCII en n-gramas dengramsize símbolos y devuelve los n-gramas con los hashes mínimo y máximo, calculados mediante la función ngramMinHash con la misma entrada.
Distingue entre mayúsculas y minúsculas.
Sintaxis
string— Cadena para la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama; cualquier número entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. La cantidad de hashes mínimos y máximos usados para calcular el resultado; cualquier número entre1y25. El valor predeterminado es6.UInt8
hashnum n-gramas cada una. Tuple(String)
Ejemplos
Ejemplo de uso
Query
Response
ngramMinHashArgCaseInsensitive
Introducido en: v21.1.0 Divide una cadena ASCII en n-gramas dengramsize símbolos y devuelve los n-gramas con el hash mínimo y máximo, calculados por la función ngramMinHashCaseInsensitive con la misma entrada.
No distingue entre mayúsculas y minúsculas.
Sintaxis
string— Cadena sobre la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama, cualquier número entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. El número de hashes mínimos y máximos utilizados para calcular el resultado, cualquier número entre1y25. El valor predeterminado es6.UInt8
hashnum n-gramas cada una. Tuple(Tuple(String))
Ejemplos
Ejemplo de uso
Query
Response
ngramMinHashArgCaseInsensitiveUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en n-gramas dengramsize símbolos y devuelve los n-gramas con los valores hash mínimo y máximo, calculados mediante la función ngramMinHashCaseInsensitiveUTF8 con la misma entrada.
No distingue entre mayúsculas y minúsculas.
Sintaxis
string— Cadena para la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama; puede ser cualquier número de1a25. El valor predeterminado es3.UInt8hashnum— Opcional. El número de hashes mínimos y máximos utilizados para calcular el resultado; puede ser cualquier número de1a25. El valor predeterminado es6.UInt8
hashnum n-gramas cada una. Tuple(Tuple(String))
Ejemplos
Ejemplo de uso
Query
Response
ngramMinHashArgUTF8
Introducida en: v21.1.0 Divide una cadena UTF-8 en n-gramas dengramsize símbolos y devuelve los n-gramas con el valor hash mínimo y máximo, calculados por la función ngramMinHashUTF8 con la misma entrada.
Distingue entre mayúsculas y minúsculas.
Sintaxis
string— Cadena para la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama; cualquier valor de1a25. El valor predeterminado es3.UInt8hashnum— Opcional. La cantidad de hashes mínimos y máximos utilizados para calcular el resultado; cualquier valor de1a25. El valor predeterminado es6.UInt8
hashnum n-gramas. Tuple(Tuple(String))
Ejemplos
Ejemplo de uso
Query
Response
ngramMinHashCaseInsensitive
Introducido en: v21.1.0 Divide una cadena ASCII en n-gramas dengramsize símbolos, calcula los valores hash de cada n-grama y devuelve una tupla con esos hashes.
Usa hashnum hashes mínimos para calcular el hash mínimo y hashnum hashes máximos para calcular el hash máximo.
No distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con tupleHammingDistance.
Para dos cadenas, si los hashes devueltos son iguales en ambas, entonces esas cadenas son iguales.
Sintaxis
string— String. String. -ngramsize— El tamaño de un n-grama. Opcional. Valores posibles: cualquier número de1a25. Valor predeterminado:3. UInt8. -hashnum— La cantidad de hashes mínimos y máximos utilizados para calcular el resultado. Opcional. Valores posibles: cualquier número de1a25. Valor predeterminado:6. UInt8.
Tuple
Ejemplos
Ejemplo de uso
Query
Response
ngramMinHashCaseInsensitiveUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en n-grams dengramsize símbolos, calcula valores hash para cada n-gram y devuelve una tupla con estos hash.
Usa hashnum hash mínimos para calcular el hash mínimo y hashnum hash máximos para calcular el hash máximo.
No distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con tupleHammingDistance.
Para dos cadenas, si los hash devueltos son los mismos para ambas, entonces esas cadenas son iguales.
Sintaxis
string— Cadena para la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama; cualquier valor entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. La cantidad de hashes mínimos y máximos que se usan para calcular el resultado; cualquier valor entre1y25. El valor predeterminado es6.UInt8
Tuple
Ejemplos
Ejemplo de uso
Query
Response
ngramMinHashUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en n-gramas dengramsize símbolos, calcula valores hash para cada n-grama y devuelve una tupla con esos hashes.
Usa hashnum hashes mínimos para calcular el hash mínimo y hashnum hashes máximos para calcular el hash máximo.
Distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con tupleHammingDistance.
Para dos cadenas, si los hashes devueltos son los mismos en ambas, entonces esas cadenas son iguales.
Sintaxis
string— Cadena para la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama; cualquier valor entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. La cantidad de hashes mínimos y máximos utilizada para calcular el resultado; cualquier valor entre1y25. El valor predeterminado es6.UInt8
Tuple
Ejemplos
Ejemplo de uso
Query
Response
ngramSimHash
Introducido en: v21.1.0 Divide una cadena ASCII en n-gramas dengramsize símbolos y devuelve el simhash de los n-gramas.
Puede utilizarse para detectar cadenas semiduplicadas con bitHammingDistance.
Cuanto menor sea la distancia de Hamming de los simhashes calculados de dos cadenas, más probable será que esas cadenas sean iguales.
Sintaxis
string— Cadena para la que se calcula elsimhashque distingue entre mayúsculas y minúsculas.Stringngramsize— Opcional. El tamaño de un ngrama, cualquier número entre1y25. El valor predeterminado es3.UInt8
UInt64
Ejemplos
Ejemplo de uso
Query
Response
ngramSimHashCaseInsensitive
Introducido en: v21.1.0 Divide una cadena ASCII en n-gramas dengramsize símbolos y devuelve el simhash de n-gramas.
No distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con bitHammingDistance.
Cuanto menor sea la distancia de Hamming entre los simhashes calculados de dos cadenas, mayor será la probabilidad de que esas cadenas sean iguales.
Sintaxis
string— Cadena para la que se calcula elsimhashsin distinción entre mayúsculas y minúsculas.Stringngramsize— Opcional. El tamaño de un n-grama, cualquier valor entre1y25. El valor predeterminado es3.UInt8
UInt64
Ejemplos
Ejemplo de uso
Query
Response
ngramSimHashCaseInsensitiveUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en n-gramas dengramsize símbolos y devuelve el simhash del n-grama.
No distingue entre mayúsculas y minúsculas.
Puede utilizarse para detectar cadenas semiduplicadas con bitHammingDistance. Cuanto menor sea la distancia de Hamming entre los simhashes calculados de dos cadenas, mayor será la probabilidad de que esas cadenas sean iguales.
Sintaxis
string— Cadena para la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama; cualquier valor entre1y25. El valor predeterminado es3.UInt8
UInt64
Ejemplos
Ejemplo de uso
Query
Response
ngramSimHashUTF8
Introducido en: v21.1.0 Divide una cadena codificada en UTF-8 en n-gramas dengramsize símbolos y devuelve el simhash de cada n-grama.
Distingue entre mayúsculas y minúsculas.
Puede utilizarse para detectar cadenas semiduplicadas con bitHammingDistance.
Cuanto menor sea la distancia de Hamming entre los simhashes calculados de dos cadenas, mayor será la probabilidad de que esas cadenas sean iguales.
Sintaxis
string— Cadena para la que se calcula el hash.Stringngramsize— Opcional. El tamaño de un n-grama, cualquier valor entre1y25. El valor predeterminado es3.UInt8
UInt64
Ejemplos
Ejemplo de uso
Query
Response
sipHash128
Introducido en: v1.1.0 ComosipHash64, pero produce un valor hash de 128 bits; es decir, el estado final de xor-folding se calcula hasta 128 bits.
Sintaxis
arg1[, arg2, ...]— Un número variable de argumentos de entrada sobre los que calcular el hash.Any
SipHash de 128 bits. FixedString(16)
Ejemplos
Ejemplo de uso
Query
Response
sipHash128Keyed
Introducido en: v23.2.0 Igual quesipHash128, pero además acepta un argumento de clave explícito en lugar de usar una clave fija.
Sintaxis
(k0, k1)— Una tupla de dos valores UInt64 que representa la clave.Tuple(UInt64, UInt64)arg1[, arg2, ...]— Un número variable de argumentos de entrada para los que se debe calcular el hash.Any
SipHash de 128 bits de tipo FixedString(16). FixedString(16)
Ejemplos
Ejemplo de uso
Query
Response
sipHash128Reference
Introducido en: v23.2.0 Igual quesipHash128, pero implementa el algoritmo de 128 bits de los autores originales de SipHash.
Sintaxis
arg1[, arg2, ...]— Un número variable de argumentos de entrada para los que se calculará el hash.Any
SipHash de 128 bits calculado a partir de los argumentos de entrada. FixedString(16)
Ejemplos
Ejemplo de uso
Query
Response
sipHash128ReferenceKeyed
Introducido en: v23.2.0 Igual quesipHash128Reference, pero además recibe un argumento de clave explícito en lugar de usar una clave fija.
Sintaxis
(k0, k1)— Tupla de dos valores que representan la claveTuple(UInt64, UInt64)arg1[, arg2, ...]— Un número variable de argumentos de entrada para los que se calcula el valor hash.Any
SipHash de 128 bits calculado a partir de los argumentos de entrada. FixedString(16)
Ejemplos
Ejemplo de uso
Query
Response
sipHash64
Introducido en: v1.1.0 Produce un valor hash SipHash de 64 bits. Esta es una función hash criptográfica. Funciona al menos tres veces más rápido que la función hashMD5.
La función interpreta todos los parámetros de entrada como cadenas y calcula el valor hash de cada uno de ellos.
A continuación, combina los hashes mediante el siguiente algoritmo:
- El primer y el segundo valor hash se concatenan en un array, del que se calcula el hash.
- El valor hash calculado previamente y el hash del tercer parámetro de entrada se procesan del mismo modo.
- Este cálculo se repite para todos los valores hash restantes de la entrada original.
los valores hash calculados pueden ser iguales para los mismos valores de entrada de distintos tipos de argumento.
Esto afecta, por ejemplo, a los tipos enteros de distinto tamaño,
Tuple con nombre y sin nombre con los mismos datos, Map y el tipo Array(Tuple(key, value)) correspondiente con los mismos datos.arg1[, arg2, ...]— Un número variable de argumentos de entrada.Any
UInt64
Ejemplos
Ejemplo de uso
Query
Response
sipHash64Keyed
Introducido en: v23.2.0 ComosipHash64, pero además recibe un argumento explícito clave en lugar de usar una clave fija.
Sintaxis
(k0, k1)— Una tupla de dos valores que representa la clave.Tuple(UInt64, UInt64)arg1[,arg2, ...]— Un número variable de argumentos de entrada.Any
UInt64
Ejemplos
Ejemplo de uso
Query
Response
wordShingleMinHash
Introducido en: v21.1.0 Divide una cadena ASCII en partes (shingles) deshinglesize palabras, calcula los valores hash de cada secuencia de palabras y devuelve una tupla con esos hashes.
Usa hashnum hashes mínimos para calcular el hash mínimo y hashnum hashes máximos para calcular el hash máximo.
Distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con tupleHammingDistance.
Para dos cadenas, si los hashes devueltos son iguales en ambas, entonces esas cadenas son iguales.
Sintaxis
string— Cadena para la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia contigua de palabras; cualquier número entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. El número de hashes mínimos y máximos utilizados para calcular el resultado; cualquier número entre1y25. El valor predeterminado es6.UInt8
Tuple(UInt64, UInt64)
Ejemplos
Ejemplo de uso
Query
Response
wordShingleMinHashArg
Introducido en: v1.1.0 Divide una cadena ASCII en partes (shingles) deshinglesize palabras cada una y devuelve los shingles con el hash mínimo y máximo de palabras, calculados por la función wordShingleMinHash con la misma entrada.
Distingue entre mayúsculas y minúsculas.
Sintaxis
string— Cadena para la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia de palabras; cualquier valor entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. El número de hashes mínimos y máximos utilizados para calcular el resultado; cualquier valor entre1y25. El valor predeterminado es6.UInt8
hashnum secuencias de palabras. Tuple(Tuple(String))
Ejemplos
Ejemplo de uso
Query
Response
wordShingleMinHashArgCaseInsensitive
Introducido en: v21.1.0 Divide una cadena ASCII en partes (shingles) deshinglesize palabras cada una y devuelve las secuencias de palabras con los hashes mínimo y máximo de las palabras, calculados por la función wordShingleMinHashCaseInsensitive con la misma entrada.
No distingue entre mayúsculas y minúsculas.
Sintaxis
string— Cadena para la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia de palabras; cualquier valor entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. El número de hashes mínimos y máximos utilizados para calcular el resultado; cualquier valor entre1y25. El valor predeterminado es6.UInt8
hashnum secuencias de palabras. Tuple(Tuple(String))
Ejemplos
Ejemplo de uso
Query
Response
wordShingleMinHashArgCaseInsensitiveUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en partes (shingles) deshinglesize palabras cada una y devuelve los shingles con el hash mínimo y máximo de palabras, calculados mediante la función wordShingleMinHashCaseInsensitiveUTF8 a partir de la misma entrada.
No distingue entre mayúsculas y minúsculas.
Sintaxis
string— Cadena para la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia de palabras contiguas; cualquier número de1a25. El valor predeterminado es3.UInt8hashnum— Opcional. La cantidad de hashes mínimos y máximos que se usan para calcular el resultado; cualquier número de1a25. El valor predeterminado es6.UInt8
hashnum secuencias de palabras contiguas. Tuple(Tuple(String))
Ejemplos
Ejemplo de uso
Query
Response
wordShingleMinHashArgUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en partes (shingles) deshinglesize palabras cada una y devuelve los shingles con el hash de palabra mínimo y máximo, calculados por la función wordShingleMinHashUTF8 con la misma entrada.
Distingue entre mayúsculas y minúsculas.
Sintaxis
string— Cadena para la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de lasecuencia de palabras; cualquier valor entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. La cantidad de hashes mínimos y máximos utilizados para calcular el resultado; cualquier valor entre1y25. El valor predeterminado es6.UInt8
hashnum secuencias de palabras. Tuple(Tuple(String))
Ejemplos
Ejemplo de uso
Query
Response
wordShingleMinHashCaseInsensitive
Introducido en: v21.1.0 Divide una cadena ASCII en partes (shingles) deshinglesize palabras, calcula los valores hash de cada secuencia de palabras y devuelve una tupla con esos hashes.
Utiliza hashnum hashes mínimos para calcular el hash mínimo y hashnum hashes máximos para calcular el hash máximo.
No distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con tupleHammingDistance.
Para dos cadenas, si los hashes devueltos son los mismos en ambas, entonces esas cadenas son iguales.
Sintaxis
string— Cadena para la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia de palabras, cualquier valor entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. El número de hashes mínimos y máximos que se usan para calcular el resultado, cualquier valor entre1y25. El valor predeterminado es6.UInt8
Tuple(UInt64, UInt64)
Ejemplos
Ejemplo de uso
Query
Response
wordShingleMinHashCaseInsensitiveUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en partes (shingles) deshinglesize palabras, calcula valores hash para cada secuencia de palabras y devuelve una tupla con esos hashes.
Usa hashnum hashes mínimos para calcular el hash mínimo y hashnum hashes máximos para calcular el hash máximo.
No distingue entre mayúsculas y minúsculas.
Se puede usar para detectar cadenas semiduplicado con tupleHammingDistance.
Para dos cadenas, si los hashes devueltos son los mismos en ambas, entonces esas cadenas son iguales.
Sintaxis
string— Cadena sobre la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia de palabras; puede ser cualquier número entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. La cantidad de hashes mínimos y máximos utilizados para calcular el resultado; puede ser cualquier número entre1y25. El valor predeterminado es6.UInt8
Tuple(UInt64, UInt64)
Ejemplos
Ejemplo de uso
Query
Response
wordShingleMinHashUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en partes (shingles) deshinglesize palabras, calcula valores hash para cada secuencia de palabras y devuelve una tupla con esos hashes.
Usa hashnum hashes mínimos para calcular el hash mínimo y hashnum hashes máximos para calcular el hash máximo.
Distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con tupleHammingDistance.
Para dos cadenas, si los hashes devueltos son iguales en ambas, esas cadenas son iguales.
Sintaxis
string— String sobre la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia contigua de palabras; cualquier valor entre1y25. El valor predeterminado es3.UInt8hashnum— Opcional. La cantidad de hashes mínimos y máximos utilizados para calcular el resultado; cualquier valor entre1y25. El valor predeterminado es6.UInt8
Tuple(UInt64, UInt64)
Ejemplos
Ejemplo de uso
Query
Response
wordShingleSimHash
Introducido en: v21.1.0 Divide una cadena ASCII en fragmentos (shingles) deshinglesize palabras y devuelve el simhash de la secuencia de palabras.
Distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con bitHammingDistance.
Cuanto menor sea la distancia de Hamming entre los simhashes calculados de dos cadenas, más probable será que esas cadenas sean iguales.
Sintaxis
string— Cadena para la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia de palabras, cualquier valor entre1y25. El valor predeterminado es3.UInt8
UInt64
Ejemplos
Ejemplo de uso
Query
Response
wordShingleSimHashCaseInsensitive
Introducido en: v21.1.0 Divide una cadena ASCII en partes (shingles) deshinglesize palabras y devuelve el simhash de la secuencia de palabras.
No distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con bitHammingDistance.
Cuanto menor sea la distancia de Hamming entre los simhashes calculados de dos cadenas, mayor será la probabilidad de que sean iguales.
Sintaxis
string— Cadena para la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia de palabras; puede ser cualquier número entre1y25. El valor predeterminado es3.UInt8
UInt64
Ejemplos
Ejemplo de uso
Query
Response
wordShingleSimHashCaseInsensitiveUTF8
Introducido en: v1.1.0 Divide una cadena codificada en UTF-8 en partes (shingles) deshinglesize palabras y devuelve el simhash de la secuencia de palabras.
No distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con bitHammingDistance.
Cuanto menor sea la distancia de Hamming entre los simhashes calculados de dos cadenas, más probable será que esas cadenas sean iguales.
Sintaxis
string— Cadena sobre la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia de palabras; puede ser cualquier valor entre1y25. El valor predeterminado es3.UInt8
UInt64
Ejemplos
Ejemplo de uso
Query
Response
wordShingleSimHashUTF8
Introducido en: v21.1.0 Divide una cadena UTF-8 en partes (shingles) deshinglesize palabras y devuelve el simhash de la secuencia de palabras.
Distingue entre mayúsculas y minúsculas.
Puede usarse para detectar cadenas semiduplicadas con bitHammingDistance.
Cuanto menor sea la distancia de Hamming entre los simhashes calculados de dos cadenas, mayor será la probabilidad de que esas cadenas sean iguales.
Sintaxis
string— Cadena sobre la que se calcula el hash.Stringshinglesize— Opcional. El tamaño de una secuencia contigua de palabras; cualquier valor de1a25. El valor predeterminado es3.UInt8
UInt64
Ejemplos
Ejemplo de uso
Query
Response
wyHash64
Introducido en: v22.7.0 Calcula un valor hash de 64 bits wyHash64. Sintaxisarg— Argumento de tipo String para el que se va a calcular el hash.String
UInt64
Ejemplos
Ejemplo de uso
Query
Response
xxHash32
Introducido en: v20.1.0 Calcula un xxHash de una cadena. Para ver la versión de 64 bits, consultexxHash64
Sintaxis
arg— Cadena de entrada para calcular el hash.String
UInt32
Ejemplos
Ejemplo de uso
Query
Response
xxHash64
Introducido en: v20.1.0 Calcula un xxHash de una cadena. Para la versión de 32 bits, consultexxHash32
Sintaxis
arg— Cadena de entrada para calcular el hash.String
UInt64
Ejemplos
Ejemplo de uso
Query
Response
xxHash64Spark
Introducida en: v26.7.0 Calcula un xxHash a partir de una cadena con la misma seed que Spark. Esta función es igual quexxHash64, pero usa la seed 42 y devuelve el resultado como Int64.
Solo admite entradas String y NULL.
Para NULL, la función devuelve 42, en consonancia con el comportamiento de la seed en Spark.
Sintaxis
arg— Cadena de entrada para calcular elhash.String
hash de 64 bits calculado a partir de la cadena de entrada. Int64
Ejemplos
Ejemplo de uso
Query
Response
xxh3
Introducido en: v22.12.0 Calcula un valor de hash de 64 bits XXH3. Sintaxisexpr— Una lista de expresiones de cualquier tipo de dato.Any
xxh3 calculado de 64 bits UInt64
Ejemplos
Ejemplo de uso
Query
Response
xxh3_128
Introducido en: v26.2.0 Calcula un valor hash XXH3 de 128 bits. Sintaxisexpr— Una lista de expresiones de cualquier tipo de dato.Any
xxh3 calculado de 128 bits UInt128
Ejemplos
Ejemplo de uso
Query
Response