bech32Decode
Introducido en: v25.6.0 Decodifica una cadena de dirección Bech32 generada por los algoritmos bech32 o bech32m.A diferencia de la función de codificación,
bech32Decode manejará automáticamente las FixedStrings con relleno.address— Una cadena Bech32 que se va a decodificar.StringoFixedStringmode— Opcional. Pase'raw'para decodificar sin eliminar el primer byte como versión witness. Use esta opción para direcciones que no sean SegWit (p. ej., Cosmos SDK).String
(hrp, data) que se usó para codificar la cadena. Los datos están en formato binario. Tuple(String, String)
Ejemplos
Decodificar una dirección
Query
Response
Query
Response
bech32Encode
Introducido en: v25.6.0 Codifica una cadena de datos binarios, junto con una parte legible para humanos (HRP), mediante los algoritmos Bech32 o Bech32m.Al usar el tipo de datos
FixedString, si un valor no llena por completo la fila, se rellena con caracteres nulos.
Aunque la función bech32Encode gestiona esto automáticamente para el argumento hrp, en el caso del argumento data los valores no deben estar rellenados.
Por este motivo, no se recomienda usar el tipo de datos FixedString para los valores de datos, a menos que tenga la certeza
de que todos tienen la misma longitud y se asegure de que la columna FixedString también esté configurada con esa longitud.hrp— Una cadenaStringde1 - 83caracteres en minúsculas que especifica la “parte legible para humanos” del código. Normalmente, ‘bc’ o ‘tb’.StringoFixedStringdata— Una cadenaStringde datos binarios para codificar.StringoFixedStringwitver_or_variant— Opcional. Puede ser una versión witness de tipo UInt* (predeterminado = 1,0para Bech32,1+ para Bech32m) o una variante de codificación de tipo String:'bech32'(BIP173) o'bech32m'(BIP350). Cuando se usa una variante en forma de cadena, no se antepone ningún byte de versión witness; esto es necesario para direcciones no SegWit, como las de Cosmos SDK.UInt*oString
String
Ejemplos
Bech32m predeterminado
Query
Response
Query
Response
Query
Response
Query
Response
bin
Introducido en: v21.8.0 Devuelve una cadena que contiene la representación binaria del argumento según la siguiente lógica para distintos tipos:
Sintaxis
arg— Un valor para convertir a binario.StringoFixedStringo(U)Int*oFloat*oDecimaloDateoDateTime
String
Ejemplos
Entero simple
Query
Response
Query
Response
Query
Response
Query
Response
bitPositionsToArray
Introducido en: v21.7.0 Esta función devuelve las posiciones (en orden ascendente) de los bits con valor 1 en la representación binaria de un entero sin signo. Los enteros de entrada con signo se convierten primero en un entero sin signo. Sintaxisarg— Un valor entero.(U)Int*
Array(UInt64)
Ejemplos
Un solo bit activado
Query
Response
Query
Response
bitmaskToArray
Introducida en: v1.1.0 Esta función descompone un entero en una suma de potencias de dos. Las potencias de dos se devuelven en un array ordenado de forma ascendente. Sintaxisnum— Un valor entero.(U)Int*
Array(UInt64)
Ejemplos
Ejemplo básico
Query
Response
Query
Response
bitmaskToList
Introducido en: v1.1.0 Como bitmaskToArray, pero devuelve las potencias de dos en una cadena separada por comas. Sintaxisnum— Un valor entero.(U)Int*
String
Ejemplos
Ejemplo básico
Query
Response
char
Introducido en: v20.1.0 Devuelve una cadena cuya longitud es igual al número de argumentos proporcionados, donde cada byte tiene el valor del argumento correspondiente. Acepta varios argumentos de tipos numéricos. Si el valor del argumento está fuera del rango del tipo de datosUInt8, se convierte
a UInt8 con posible redondeo y desbordamiento.
Sintaxis
num1[, num2[, num3 ...]]— Argumentos numéricos interpretados como enteros.(U)Int8/16/32/64oFloat*
String
Ejemplos
Ejemplo básico
Query
Response
Query
Response
hex
Introducido en: v1.1.0 Devuelve una cadena que contiene la representación hexadecimal del argumento según la siguiente lógica para distintos tipos:
La función usa letras mayúsculas
A-F y no utiliza ningún prefijo (como 0x) ni sufijo (como h).
Sintaxis
String
Ejemplos
Entero simple
Query
Response
Query
Response
Query
Response
Query
Response
hilbertDecode
Introducido en: v24.6.0 Decodifica un índice de curva de Hilbert de nuevo en una tupla de enteros sin signo, que representa coordenadas en un espacio multidimensional. Al igual que la funciónhilbertEncode, esta función tiene dos modos de funcionamiento:
- Simple
- Expandido
UInt64.
Modo expandido
Acepta una máscara de rango (tupla) como primer argumento y hasta 2 enteros sin signo como
argumentos adicionales. Cada número de la máscara configura la cantidad de bits en que
el argumento correspondiente se desplazará a la izquierda, escalando así el argumento
dentro de su rango.
La expansión de rango puede resultar útil cuando se necesita una distribución similar para
argumentos con rangos (o cardinalidad) muy diferentes. Por ejemplo: ‘Dirección IP’ (0...FFFFFFFF)
y ‘Código de país’ (0...FF). Al igual que con la función de codificación, esto se limita a 8
números como máximo.
Sintaxis
tuple_size— Valor entero no superior a2.UInt8/16/32/64oTuple(UInt8/16/32/64)code— CódigoUInt64.UInt64
Tuple(UInt64)
Ejemplos
Modo simple
Query
Response
Query
Response
Query
Response
Query
Response
hilbertEncode
Introducido en: v24.6.0 Calcula el código de la curva de Hilbert para una lista de enteros sin signo. La función tiene dos modos de operación:- Simple
- expandido
args— Como máximo, dos valoresUInto columnas de tipoUInt.UInt8/16/32/64range_mask— Para el modo expandido, como máximo, dos valoresUInto columnas de tipoUInt.UInt8/16/32/64
UInt64. UInt64
Ejemplos
Modo simple
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
mortonDecode
Introducido en: v24.6.0 Decodifica una codificación de Morton (ZCurve) en la tupla correspondiente de enteros sin signo. Al igual que la funciónmortonEncode, esta función tiene dos modos de funcionamiento:
- Simple
- expandido
1- sin reducción2- reducción de 2x3- reducción de 3x ⋮- Hasta 8x de reducción.
(0...FFFFFFFF)
y ‘código de país’ (0...FF). Al igual que con la función de codificación, esto está limitado a
un máximo de 8 números.
Sintaxis
tuple_size— Valor entero no superior a 8.UInt8/16/32/64range_mask— En el modo expandido, la máscara de cada argumento. La máscara es una tupla de enteros sin signo. Cada número de la máscara configura el grado de reducción del rango.Tuple(UInt8/16/32/64)code— Código de Morton que se va a decodificar, tal como lo generamortonEncode. Solo losN * intDiv(64, N)bits menos significativos forman el dominio de entrada, dondeNes el tamaño de la tupla resultante. Los resultados para códigos mayores no están especificados y pueden variar entre builds.UInt64
Tuple(UInt64)
Ejemplos
Modo simple
Query
Response
Query
Response
Query
Response
Query
Response
mortonEncode
Introducido en: v24.6.0 Calcula la codificación de Morton (ZCurve) para una lista de enteros sin signo. La función tiene dos modos de operación:- Simple
- expandido*
UInt64.
Modo expandido
Acepta una máscara de rango (Tuple) como primer argumento y
hasta 8 enteros sin signo como argumentos adicionales.
Cada número de la máscara configura el grado de expansión del rango:
- 1 - sin expansión
- 2 - expansión de 2x
- 3 - expansión de 3x ⋮
- Hasta 8x de expansión.
args— Hasta 8 enteros sin signo o columnas del tipo indicado anteriormente.UInt8/16/32/64range_mask— En el modo expandido, la máscara de cada argumento. La máscara es una tupla de enteros sin signo del1al8. Cada número de la máscara configura el grado de reducción del rango.Tuple(UInt8/16/32/64)
UInt64. UInt64
Ejemplos
Modo simple
Query
Response
Query
Response
Query
Response
Query
Response
Query
Response
sqidDecode
Introducido en: v24.1.0 Convierte un sqid nuevamente en un array de números. Sintaxissqid— El sqid que se debe decodificar.String
sqid. Array(UInt64)
Ejemplos
Ejemplo de uso
Query
Response
sqidEncode
Introducido en: v24.1.0 Transforma números en un sqid, una cadena de ID similar a las de YouTube. Sintaxissqid
Argumentos
n1[, n2, ...]— Cualquier cantidad de números.UInt8/16/32/64
String
Ejemplos
Ejemplo de uso
Query
Response
unbin
Introducido en: v21.8.0 Interpreta cada par de dígitos binarios (del argumento) como un número y lo convierte en el byte representado por ese número. La función realiza la operación inversa debin.
Para un argumento numérico, unbin() no devuelve el inverso de bin(). Si quiere convertir el resultado en un número, puede usar las funciones reverse y reinterpretAs<Type>.
Si
unbin se invoca desde clickhouse-client, las cadenas binarias se muestran con UTF-8.0 y 1. La cantidad de dígitos binarios no tiene que ser múltiplo de ocho. Si la cadena del argumento contiene cualquier cosa distinta de dígitos binarios,
el resultado no está definido (no se genera ninguna excepción).
Sintaxis
arg— Una cadena que contiene cualquier número de dígitos binarios.String
String
Ejemplos
Uso básico
Query
Response
Query
Response
unhex
Introducido en: v1.1.0 Realiza la operación inversa dehex. Interpreta cada par de dígitos hexadecimales (en el argumento) como un número y lo convierte
en el byte representado por ese número. El valor devuelto es una cadena binaria (BLOB).
Si desea convertir el resultado en un número, puede usar las funciones reverse y reinterpretAs<Type>.
clickhouse-client interpreta las cadenas como UTF-8.
Esto puede hacer que los valores devueltos por hex se muestren de forma inesperada.A-F.
No es necesario que el número de dígitos hexadecimales sea par.
Si es impar, el último dígito se interpreta como la mitad menos significativa del byte 00-0F.
Si la cadena del argumento contiene cualquier carácter distinto de un dígito hexadecimal, se devuelve un resultado definido por la implementación (no se lanza ninguna excepción).
En el caso de un argumento numérico, unhex() no realiza la operación inversa de hex(N).
Sintaxis
arg— Una cadena que contiene una cantidad cualquiera de dígitos hexadecimales.StringoFixedString
String
Ejemplos
Uso básico
Query
Response
Query
Response