Todos los productos
Search
Centro de documentos

Hologres:Spark functions

Última actualización: Sep 05, 2026

A partir de la versión V3.1, Hologres admite funciones compatibles con Spark mediante la extensión hg_spark_funcs. Este tema describe todas las funciones compatibles, junto con su sintaxis, parámetros, tipos de retorno y ejemplos.

Requisitos previos

Instale la extensión hg_spark_funcs como superusuario antes de invocar cualquier función. Ejecute la siguiente instrucción una vez por base de datos; repítala para cada nueva base de datos que cree.

CREATE extension hg_spark_funcs;
La extensión solo se puede crear en el esquema hg_spark_funcs . No es posible especificar un esquema diferente.

Invocación de funciones

Todas las funciones residen en el esquema hg_spark_funcs. Utilice cualquiera de los métodos siguientes.

Método 1: Prefijo explícito de esquema (recomendado)

Anteponga hg_spark_funcs. al nombre de la función:

SELECT hg_spark_funcs.ACOSH(a) FROM public.spark_test;

Método 2: Configuración de la ruta de búsqueda

Agregue hg_spark_funcs a la ruta de búsqueda de la sesión y luego invoque las funciones sin prefijo:

-- Set the search path for this session
SET search_path = 'hg_spark_funcs';
-- Call the function directly
SELECT ACOSH(a) FROM public.spark_test;

Para consultar la especificación completa de funciones de Spark, consulte Funciones de Spark.

Datos de ejemplo

Todos los ejemplos de este tema utilizan la tabla siguiente. El parámetro x no acepta valores constantes; debe provenir de una columna.

CREATE TABLE public.spark_test(a INT);
INSERT INTO public.spark_test VALUES (3);

Funciones compatibles

Función

Descripción

ACOSH

Devuelve el coseno hiperbólico inverso.

ASINH

Devuelve el seno hiperbólico inverso.

ATANH

Devuelve la tangente hiperbólica inversa.

BETWEEN

Comprueba si un valor se encuentra dentro de un rango especificado.

BIN

Convierte un número a su representación en cadena binaria.

BIT_COUNT

Devuelve la cantidad de bits en 1 de la representación binaria de un número.

BITWISE_AND

Realiza una operación AND bit a bit.

BITWISE_NOT

Realiza una operación NOT bit a bit.

BITWISE_OR

Realiza una operación OR bit a bit.

BITWISE_XOR

Realiza una operación XOR bit a bit.

CHECKED_ADD

Suma dos números y genera un error en caso de desbordamiento.

CHECKED_DIVIDE

Divide dos números y genera un error en caso de desbordamiento.

CHECKED_MULTIPLY

Multiplica dos números y genera un error en caso de desbordamiento.

CHECKED_SUBTRACT

Resta dos números y genera un error en caso de desbordamiento.

CONTAINS

Comprueba si la cadena x contiene la cadena y.

CONV

Convierte una cadena numérica de una base a otra.

COSH

Devuelve el coseno hiperbólico.

CRC32

Devuelve el valor hash de comprobación de redundancia cíclica de 32 bits (CRC32).

CSC

Devuelve la cosecante.

ENDSWITH

Comprueba si la cadena x termina con la cadena y.

EXPM1

Devuelve exp(x) - 1.

FIND_IN_SET

Devuelve la posición (base 1) de una cadena dentro de una lista separada por comas.

FROM_UNIXTIME

Convierte segundos desde la época UNIX a una cadena de marca de tiempo con formato.

HEX

Convierte un número a su representación en cadena hexadecimal.

HYPOT

Devuelve la raíz cuadrada de la suma de los cuadrados de dos valores.

IN

Comprueba si un valor existe en un arreglo.

ISNAN

Comprueba si un valor es Not a Number (NaN).

LEVENSHTEIN

Devuelve la distancia de Levenshtein (distancia de edición) entre dos cadenas.

LOG10

Devuelve el logaritmo en base 10.

LOG1P

Devuelve el logaritmo natural de x + 1.

LOG2

Devuelve el logaritmo en base 2.

MIGHT_CONTAIN

Comprueba si un valor podría existir en un filtro Bloom.

MONOTONICALLY_INCREASING_ID

Genera enteros de 64 bits únicos y monótonamente crecientes.

PMOD

Devuelve el residuo positivo de x dividido entre y.

REMAINDER

Devuelve el residuo de x dividido entre y.

RINT

Devuelve el entero más cercano a un valor.

SEC

Devuelve la secante.

SHA1

Devuelve el hash SHA-1 como cadena hexadecimal.

SHA2

Devuelve el hash SHA-2 (SHA-224, SHA-256, SHA-384 o SHA-512) como cadena hexadecimal.

SHIFTLEFT

Realiza un desplazamiento bit a bit hacia la izquierda.

SHIFTRIGHT

Realiza un desplazamiento bit a bit hacia la derecha.

SINH

Devuelve el seno hiperbólico.

SOUNDEX

Devuelve el código Soundex de una cadena.

STARTSWITH

Comprueba si la cadena x comienza con la cadena y.

SUBSTRING_INDEX

Devuelve la subcadena anterior a la n-ésima aparición de un separador.

UNHEX

Convierte una cadena hexadecimal a su representación binaria.

URL_DECODE

Decodifica una cadena codificada en URL.

URL_ENCODE

Codifica una cadena en formato seguro para URL.

Referencia de funciones

ACOSH

Devuelve el coseno hiperbólico inverso de x.

Sintaxis

ACOSH(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.ACOSH(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT ACOSH(a) FROM public.spark_test;

Resultado:

acosh
------------------
1.762747174039086

ASINH

Devuelve el seno hiperbólico inverso de x.

Sintaxis

ASINH(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.ASINH(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT ASINH(a) FROM public.spark_test;

Resultado:

      asinh
------------------
 1.8184464592320668

ATANH

Devuelve la tangente hiperbólica inversa de x.

Sintaxis

ATANH(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.ATANH(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT ATANH(a) FROM public.spark_test;

Resultado:

 atanh
-------
   NaN

BETWEEN

Comprueba si x se encuentra dentro del intervalo cerrado [min, max]. Devuelve true si se cumple min <= x <= max; de lo contrario, devuelve false.

BETWEEN es una palabra clave de Hologres. Utilice siempre el prefijo hg_spark_funcs. al invocar esta función.

Sintaxis

hg_spark_funcs.BETWEEN(x, min, max)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El valor que se va a comprobar.

min

BIGINT

Obligatorio. El límite inferior del rango (inclusivo).

max

BIGINT

Obligatorio. El límite superior del rango (inclusivo).

Valor de retorno

BOOLEAN.

Ejemplo

SELECT hg_spark_funcs.BETWEEN(a, 2, 4) FROM public.spark_test;

Resultado:

 between
---------
 t

BIN

Convierte un número a su representación en cadena binaria.

Sintaxis

BIN(x)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El número que se va a convertir.

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.BIN(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT BIN(a) FROM public.spark_test;

Resultado:

 bin
-----
 11

BIT_COUNT

Devuelve la cantidad de bits en 1 de la representación binaria de un número.

Sintaxis

BIT_COUNT(x)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El número de entrada.

Valor de retorno

INTEGER.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.BIT_COUNT(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT BIT_COUNT(a) FROM public.spark_test;

Resultado (3 en binario es 11, que tiene dos bits en 1):

 bit_count
-----------
         2

BITWISE_AND

Realiza una operación AND bit a bit sobre x y y.

Sintaxis

BITWISE_AND(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

INTEGER

Obligatorio. El primer operando.

y

INTEGER

Obligatorio. El segundo operando.

Valor de retorno

INTEGER.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.BITWISE_AND(a, 2) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT BITWISE_AND(a, 2) FROM public.spark_test;

Resultado:

 bitwise_and
-------------
           2

BITWISE_NOT

Realiza una operación NOT bit a bit sobre x.

Sintaxis

BITWISE_NOT(x)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El valor de entrada.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.BITWISE_NOT(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT BITWISE_NOT(a) FROM public.spark_test;

Resultado:

 bitwise_not
-------------
          -4

BITWISE_OR

Realiza una operación OR bit a bit sobre x y y.

Sintaxis

BITWISE_OR(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El primer operando.

y

BIGINT

Obligatorio. El segundo operando.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.BITWISE_OR(a, 2) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT BITWISE_OR(a, 2) FROM public.spark_test;

Resultado:

 bitwise_or
------------
          3

BITWISE_XOR

Realiza una operación XOR bit a bit sobre x y y.

Sintaxis

BITWISE_XOR(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

INTEGER

Obligatorio. El primer operando.

y

INTEGER

Obligatorio. El segundo operando.

Valor de retorno

INTEGER.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.BITWISE_XOR(a, 2) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT BITWISE_XOR(a, 2) FROM public.spark_test;

Resultado:

 bitwise_xor
-------------
           1

CHECKED_ADD

Suma x y y. Genera un error si el resultado se desborda, en lugar de ajustarse silenciosamente.

Sintaxis

CHECKED_ADD(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El primer operando.

y

BIGINT

Obligatorio. El segundo operando.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.CHECKED_ADD(a, 2147483647) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT CHECKED_ADD(a, 2147483647) FROM public.spark_test;

Resultado (el desbordamiento genera un error):

ERROR:  internal error: Run func: spark_checked_add fails with Exception: VeloxUserError

CHECKED_DIVIDE

Divide x entre y. Genera un error si el resultado se desborda, en lugar de ajustarse silenciosamente.

Sintaxis

CHECKED_DIVIDE(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El dividendo.

y

BIGINT

Obligatorio. El divisor.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.CHECKED_DIVIDE(a, 1/2147483647) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT CHECKED_DIVIDE(a, 1/2147483647) FROM public.spark_test;

Resultado (el desbordamiento genera un error):

ERROR:  internal error: Run func: spark_checked_divide fails with Exception: VeloxUserError

CHECKED_MULTIPLY

Multiplica x por y. Genera un error si el resultado se desborda, en lugar de ajustarse silenciosamente.

Sintaxis

CHECKED_MULTIPLY(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El primer operando.

y

BIGINT

Obligatorio. El segundo operando.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.CHECKED_MULTIPLY(a, 2147483647) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT CHECKED_MULTIPLY(a, 2147483647) FROM public.spark_test;

Resultado (el desbordamiento genera un error):

ERROR:  internal error: Run func: spark_checked_multiply fails with Exception: VeloxUserError

CHECKED_SUBTRACT

Resta y de x. Genera un error si el resultado se desborda, en lugar de ajustarse silenciosamente.

Sintaxis

CHECKED_SUBTRACT(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El minuendo.

y

BIGINT

Obligatorio. El sustraendo.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.CHECKED_SUBTRACT(a, -2147483647) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT CHECKED_SUBTRACT(a, -2147483647) FROM public.spark_test;

Resultado (el desbordamiento genera un error):

ERROR:  internal error: Run func: spark_checked_subtract fails with Exception: VeloxUserError

CONTAINS

Comprueba si la cadena x contiene la cadena y. Devuelve true si la contiene; de lo contrario, devuelve false.

Sintaxis

CONTAINS(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. La cadena donde se realiza la búsqueda.

y

TEXT

Obligatorio. La subcadena que se busca.

Valor de retorno

BOOLEAN.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.CONTAINS(a::text, '3') FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT CONTAINS(a::text, '3') FROM public.spark_test;

Resultado:

 contains
----------
 t

CONV

Convierte una cadena numérica de una base a otra.

Sintaxis

CONV(x, n, m)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. El número que se va a convertir, representado como cadena.

n

INTEGER

Obligatorio. La base de origen (por ejemplo, 10 para decimal, 2 para binario).

m

INTEGER

Obligatorio. La base de destino.

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.CONV(a::text, 10, 2) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT CONV(a::text, 10, 2) FROM public.spark_test;

Resultado (convierte 3 de base 10 a base 2):

 conv
------
 11

COSH

Devuelve el coseno hiperbólico de x.

Sintaxis

COSH(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.COSH(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT COSH(a) FROM public.spark_test;

Resultado:

       cosh
------------------
 10.0676619957778

CRC32

Devuelve el valor hash de comprobación de redundancia cíclica de 32 bits (CRC32) de una cadena binaria.

Sintaxis

CRC32(x)

Parámetros

Parámetro

Tipo

Descripción

x

BYTEA

Obligatorio. La cadena binaria de la que se obtiene el hash.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.CRC32(hg_spark_funcs.bin(a)::bytea) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT CRC32(bin(a)::bytea) FROM public.spark_test;

Resultado:

   crc32
------------
 3596227959

CSC

Devuelve la cosecante de x.

Sintaxis

CSC(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada en radianes.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.CSC(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT CSC(a) FROM public.spark_test;

Resultado:

       csc
------------------
 7.08616739573719

ENDSWITH

Comprueba si la cadena x termina con la cadena y. Devuelve true si es así; de lo contrario, devuelve false.

Sintaxis

ENDSWITH(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. La cadena que se va a comprobar.

y

TEXT

Obligatorio. El sufijo que se busca.

Valor de retorno

BOOLEAN.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.ENDSWITH(concat(a, 'hologres'), 'gres') FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT ENDSWITH(concat(a, 'hologres'), 'gres') FROM public.spark_test;

Resultado:

 endswith
----------
 t

EXPM1

Devuelve exp(x) - 1, donde exp(x) es el número de Euler elevado a la potencia x.

Sintaxis

EXPM1(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El exponente.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.EXPM1(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT EXPM1(a) FROM public.spark_test;

Resultado:

      expm1
------------------
 19.0855369231877

FIND_IN_SET

Devuelve la posición (base 1) de la cadena x dentro de la lista separada por comas y. Devuelve 0 si no se encuentra x.

Sintaxis

FIND_IN_SET(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. La cadena que se busca.

y

TEXT

Obligatorio. Una lista de cadenas separadas por comas.

Valor de retorno

INTEGER.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.FIND_IN_SET(a::text, 'a,b,c,2') FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT FIND_IN_SET(a::text, 'a,b,c,2') FROM public.spark_test;

Resultado:

 find_in_set
-------------
           4

FROM_UNIXTIME

Convierte una marca de tiempo Unix (segundos transcurridos desde 1970-01-01 00:00:00 UTC) a una cadena de marca de tiempo con formato.

Sintaxis

FROM_UNIXTIME(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El número de segundos transcurridos desde la época UNIX (1970-01-01 00:00:00 UTC).

y

TEXT

Obligatorio. La cadena de formato de salida. Utiliza la sintaxis de patrones de fecha y hora de Spark (por ejemplo, 'yyyy-MM-dd HH:mm:ss').

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.FROM_UNIXTIME(a, 'yyyy-MM-dd HH:mm:ss') FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT FROM_UNIXTIME(a, 'yyyy-MM-dd HH:mm:ss') FROM public.spark_test;

Resultado:

    from_unixtime
---------------------
 1970-01-01 00:00:03

HEX

Convierte un número a su representación en cadena hexadecimal.

Sintaxis

HEX(x)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El número que se va a convertir.

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.HEX(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT HEX(a) FROM public.spark_test;

Resultado:

 hex
-----
 3

HYPOT

Devuelve la longitud de la hipotenusa de un triángulo rectángulo con catetos x y y, calculada como sqrt(x² + y²).

Sintaxis

HYPOT(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El primer cateto.

y

DOUBLE PRECISION

Obligatorio. El segundo cateto.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.HYPOT(a, 4) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT HYPOT(a, 4) FROM public.spark_test;

Resultado (hypot(3, 4) = 5):

 hypot
-------
     5

IN

Comprueba si el valor x existe en el arreglo y. Devuelve true si se encuentra; de lo contrario, devuelve false.

Sintaxis

IN(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El valor que se busca.

y

BIGINT[]

Obligatorio. El arreglo donde se realiza la búsqueda.

Valor de retorno

BOOLEAN.

Ejemplo

SELECT hg_spark_funcs.IN(a, ARRAY[2,5,3]) FROM public.spark_test;

Resultado:

 in
----
 t

ISNAN

Comprueba si x es Not a Number (NaN). Devuelve true si es NaN; de lo contrario, devuelve false.

Sintaxis

ISNAN(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor que se va a comprobar.

Valor de retorno

BOOLEAN.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.ISNAN(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT ISNAN(a) FROM public.spark_test;

Resultado:

 isnan
-------
 f

LEVENSHTEIN

Devuelve la distancia de Levenshtein (distancia de edición) entre las cadenas x y y: el número mínimo de inserciones, eliminaciones o sustituciones de un solo carácter necesarias para transformar una cadena en la otra.

Sintaxis

LEVENSHTEIN(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. La primera cadena.

y

TEXT

Obligatorio. La segunda cadena.

Valor de retorno

INTEGER.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.LEVENSHTEIN(a::text, 'hologres') FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT LEVENSHTEIN(a::text, 'hologres') FROM public.spark_test;

Resultado:

 levenshtein
-------------
           8

LOG10

Devuelve el logaritmo en base 10 de x.

Sintaxis

LOG10(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.LOG10(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT LOG10(a) FROM public.spark_test;

Resultado:

       log10
-------------------
 0.477121254719662

LOG1P

Devuelve el logaritmo natural de x + 1.

Sintaxis

LOG1P(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.LOG1P(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT LOG1P(a) FROM public.spark_test;

Resultado:

      log1p
------------------
 1.38629436111989

LOG2

Devuelve el logaritmo base 2 de x.

Sintaxis

LOG2(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.LOG2(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT LOG2(a) FROM public.spark_test;

Resultado:

       log2
------------------
 1.58496250072116

MIGHT_CONTAIN

Comprueba si el valor y podría existir en el filtro Bloom serializado como x. Devuelve true si el valor podría estar presente (posible falso positivo) o false si está definitivamente ausente.

Sintaxis

MIGHT_CONTAIN(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BYTEA

Obligatorio. Los bytes serializados de un filtro Bloom.

y

BIGINT

Obligatorio. El valor que se busca en el filtro Bloom.

Valor de retorno

BOOLEAN.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.MIGHT_CONTAIN(a::text::bytea, 3) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT MIGHT_CONTAIN(a::text::bytea, 3) FROM public.spark_test;

Resultado:

 might_contain
---------------
 f

MONOTONICALLY_INCREASING_ID

Genera enteros de 64 bits únicos y monótonamente crecientes. Los ID generados garantizan ser únicos y aumentar de forma monótona entre filas, pero no son consecutivos.

Sintaxis

MONOTONICALLY_INCREASING_ID()

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.MONOTONICALLY_INCREASING_ID() FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT MONOTONICALLY_INCREASING_ID() FROM public.spark_test;

Resultado:

 monotonically_increasing_id
-----------------------------
                           0

PMOD

Devuelve el residuo positivo de x dividido por y. A diferencia del operador módulo estándar, el resultado siempre es no negativo.

Sintaxis

PMOD(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El dividendo.

y

BIGINT

Obligatorio. El divisor.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.PMOD(a, 2) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT PMOD(a, 2) FROM public.spark_test;

Resultado:

 pmod
------
    1

REMAINDER

Devuelve el residuo de x dividido por y.

Sintaxis

REMAINDER(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El dividendo.

y

BIGINT

Obligatorio. El divisor.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.REMAINDER(a, 2) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT REMAINDER(a, 2) FROM public.spark_test;

Resultado:

 remainder
-----------
         1

RINT

Devuelve el entero más cercano a x.

Sintaxis

RINT(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.RINT(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT RINT(a) FROM public.spark_test;

Resultado:

 rint
------
    3

SEC

Devuelve la secante de x (el recíproco del coseno).

Sintaxis

SEC(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada en radianes.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.SEC(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT SEC(a) FROM public.spark_test;

Resultado:

        sec
-------------------
 -1.01010866590799

SHA1

Devuelve el hash Secure Hash Algorithm 1 (SHA-1) de la cadena binaria x como una cadena hexadecimal.

Sintaxis

SHA1(x)

Parámetros

Parámetro

Tipo

Descripción

x

BYTEA

Obligatorio. La cadena binaria para calcular el hash.

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.SHA1(a::text::bytea) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT SHA1(a::text::bytea) FROM public.spark_test;

Resultado:

                   sha1
------------------------------------------
 77de68daecd823babbb58edb1c8e14d7106e83bb

SHA2

Devuelve el hash SHA-2 de la cadena binaria x como una cadena hexadecimal. Devuelve NULL para longitudes de bits no compatibles.

Sintaxis

SHA2(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BYTEA

Obligatorio. La cadena binaria para calcular el hash.

y

INTEGER

Obligatorio. La longitud de bits del hash. Valores compatibles: 224, 256, 384, 512. Devuelve NULL para cualquier otro valor.

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.SHA2(a::text::bytea, 3) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT SHA2(a::text::bytea, 3) FROM public.spark_test;

Resultado:

sha2
------
NaN

SHIFTLEFT

Desplaza x hacia la izquierda y bits.

Sintaxis

SHIFTLEFT(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El valor que se va a desplazar.

y

INTEGER

Obligatorio. El número de posiciones de bits para desplazar a la izquierda.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.SHIFTLEFT(a, 1) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT SHIFTLEFT(a, 1) FROM public.spark_test;

Resultado:

 shiftleft
-----------
         6

SHIFTRIGHT

Desplaza x hacia la derecha y bits.

Sintaxis

SHIFTRIGHT(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

BIGINT

Obligatorio. El valor que se va a desplazar.

y

INTEGER

Obligatorio. El número de posiciones de bits para desplazar a la derecha.

Valor de retorno

BIGINT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.SHIFTRIGHT(a, 1) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT SHIFTRIGHT(a, 1) FROM public.spark_test;

Resultado:

 shiftright
------------
          1

SINH

Devuelve el seno hiperbólico de x.

Sintaxis

SINH(x)

Parámetros

Parámetro

Tipo

Descripción

x

DOUBLE PRECISION

Obligatorio. El valor de entrada.

Valor de retorno

DOUBLE PRECISION.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.SINH(a) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT SINH(a) FROM public.spark_test;

Resultado:

       sinh
------------------
 10.0178749274099

SOUNDEX

Devuelve el código Soundex de la cadena x. El algoritmo Soundex asigna el mismo código a palabras en inglés fonéticamente similares, lo cual resulta útil para la coincidencia aproximada de nombres.

Sintaxis

SOUNDEX(x)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. La cadena de entrada.

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.SOUNDEX(concat('holo', a)) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT SOUNDEX(concat('holo', a)) FROM public.spark_test;

Resultado:

 soundex
---------
 H400

STARTSWITH

Comprueba si la cadena x comienza con la cadena y. Devuelve true si es así; de lo contrario, devuelve false.

Sintaxis

STARTSWITH(x, y)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. La cadena que se va a comprobar.

y

TEXT

Obligatorio. El prefijo que se busca.

Valor de retorno

BOOLEAN.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.STARTSWITH(concat(a, 'hologres'), 'gres') FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT STARTSWITH(concat(a, 'hologres'), 'gres') FROM public.spark_test;

Resultado:

 startswith
------------
 f

SUBSTRING_INDEX

Devuelve la subcadena de x anterior a la n-ésima aparición del separador y. Si n es positivo, devuelve todo lo que está a la izquierda del n-ésimo delimitador.

Sintaxis

SUBSTRING_INDEX(x, y, n)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. La cadena de origen.

y

TEXT

Obligatorio. El separador que se busca.

n

INTEGER

Obligatorio. El número de apariciones. Los valores positivos cuentan desde la izquierda.

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.SUBSTRING_INDEX(concat(a, 'hologres'), 'o', 2) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT SUBSTRING_INDEX(concat(a, 'hologres'), 'o', 2) FROM public.spark_test;

Resultado (devuelve la subcadena anterior a la segunda 'o' en '3hologres'):

 substring_index
-----------------
 3hol

UNHEX

Convierte una cadena hexadecimal a su representación binaria.

Sintaxis

UNHEX(x)

Parámetros

Parámetro

Tipo

Descripción

x

TEXT

Obligatorio. La cadena hexadecimal que se va a convertir.

Valor de retorno

TEXT.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.UNHEX(a::text) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT UNHEX(a::text) FROM public.spark_test;

Resultado:

 unhex
-------
 \x03

URL_DECODE

Decodifica una cadena codificada mediante URL al reemplazar las secuencias codificadas por porcentaje con sus caracteres correspondientes.

Sintaxis

URL_DECODE(x)

Parámetros

Parámetro

Tipo

Descripción

x

VARCHAR

Obligatorio. La cadena codificada mediante URL que se va a decodificar.

Valor de retorno

VARCHAR.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.URL_DECODE(hg_spark_funcs.URL_ENCODE(CONCAT('www.','Chinese',a,'.com'))) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT URL_DECODE(URL_ENCODE(CONCAT('www.','Chinese',a,'.com'))) FROM public.spark_test;

Resultado:

 url_decode
---------------
 www.chinese3.com

URL_ENCODE

Codifica una cadena en un formato seguro para URL al reemplazar los caracteres especiales con secuencias codificadas por porcentaje.

Sintaxis

URL_ENCODE(x)

Parámetros

Parámetro

Tipo

Descripción

x

VARCHAR

Obligatorio. La cadena que se va a codificar.

Valor de retorno

VARCHAR.

Ejemplo

-- Method 1: Explicit schema prefix (recommended)
SELECT hg_spark_funcs.URL_ENCODE(CONCAT('www.','Chinese',a,'.com')) FROM public.spark_test;

-- Method 2: Set the search path
SET search_path = 'hg_spark_funcs';
SELECT URL_ENCODE(CONCAT('www.','Chinese',a,'.com')) FROM public.spark_test;

Resultado:

        url_encode
-----------------------------
 www.%E4%B8%AD%E6%96%873.com