acos
Introducido en: v1.1.0
Devuelve el arcocoseno del argumento.
Sintaxis
acos(x)Argumentos
Valor devuelto
Devuelve el arcocoseno de x Float*
Ejemplos
Ejemplo de uso
SELECT acos(0.5);1.0471975511965974acosh
Introducido en: v20.12.0
Devuelve el coseno hiperbólico inverso.
Sintaxis
acosh(x)Argumentos
Valor devuelto
Devuelve el ángulo en radianes. Valores en el intervalo: 0 ≤ acosh(x) < +∞. Float64
Ejemplos
Ejemplo de uso
SELECT acosh(1)0asin
Introducido en: v1.1.0
Calcula el arcoseno del argumento indicado.
Para argumentos en el intervalo [-1, 1], devuelve un valor en el intervalo [-pi() / 2, pi() / 2].
Sintaxis
asin(x)Argumentos
Valor devuelto
Devuelve el valor del arcoseno del argumento x Float64
Ejemplos
inversa
SELECT asin(1.0) = pi() / 2, sin(asin(1)), asin(sin(1))1 1 0.9999999999999999float32
SELECT toTypeName(asin(1.0::Float32))Float64nan
SELECT asin(1.1), asin(-2), asin(inf), asin(nan)nan nan nan nanasinh
Introducido en: v20.12.0
Devuelve el arcoseno hiperbólico.
Sintaxis
asinh(x)Argumentos
Valor devuelto
Devuelve el ángulo, en radianes. Valores en el intervalo: -∞ < asinh(x) < +∞. Float64
Ejemplos
Uso básico
SELECT asinh(0)0atan
Introducido en: v1.1.0
Devuelve la arcotangente del argumento.
Sintaxis
atan(x)Argumentos
Valor devuelto
Devuelve la arcotangente de x. Float*
Ejemplos
Ejemplo de uso
SELECT atan(1);0.7853981633974483atan2
Introducido en: v20.12.0
Devuelve atan2 como el ángulo en el plano euclidiano, expresado en radianes, entre el eje x positivo y la semirrecta que pasa por el punto (x, y) ≠ (0, 0).
Sintaxis
atan2(y, x)Argumentos
y— coordenada y del punto por el que pasa el rayo.(U)Int*oFloat*oBFloat16oDecimal*x— coordenada x del punto por el que pasa el rayo.(U)Int*oFloat*oBFloat16oDecimal*
Valor devuelto
Devuelve el ángulo θ tal que -π < θ ≤ π, en radianes. Float64
Ejemplos
Ejemplo de uso
SELECT atan2(1, 1)0.7853981633974483atanh
Introducido en: v20.12.0
Devuelve la tangente hiperbólica inversa.
Sintaxis
atanh(x)Argumentos
x— Tangente hiperbólica del ángulo. Valores en el intervalo: -1 < x < 1.(U)Int*,Float*oDecimal*.(U)Int*oFloat*oDecimal*
Valor devuelto
Devuelve el ángulo en radianes. Valores en el intervalo: -∞ < atanh(x) < +∞ Float64
Ejemplos
Ejemplo de uso
SELECT atanh(0)0cbrt
Introducida en: v1.1.0
Devuelve la raíz cúbica del argumento.
Sintaxis
cbrt(x)Argumentos
Valor devuelto
Devuelve la raíz cúbica de x. Float*
Ejemplos
Ejemplo de uso
SELECT cbrt(8);2cos
Introducido en: v1.1.0
Devuelve el coseno del argumento.
Sintaxis
cos(x)Argumentos
Valor devuelto
Devuelve el coseno hiperbólico de x. Float*
Ejemplos
Ejemplo de uso
SELECT cos(0);1cosh
Introducido en: v20.12.0
Devuelve el coseno hiperbólico del argumento.
Sintaxis
cosh(x)Argumentos
Valor devuelto
Devuelve valores en el intervalo: 1 ≤ cosh(x) < +∞ Float64
Ejemplos
Uso básico
SELECT cosh(0)1degrees
Introducido en: v22.2.0
Convierte radianes a grados.
Sintaxis
degrees(x)Argumentos
Valor devuelto
Devuelve el valor de x en grados. Float64
Ejemplos
Uso básico
SELECT degrees(3.141592653589793)180e
Disponible desde: v1.1.0
Devuelve la constante de Euler (e).
Sintaxis
e()Argumentos
- Ninguno.
Valor devuelto
Devuelve la constante de Euler Float64
Ejemplos
Ejemplo de uso
SELECT e();2.718281828459045erf
Introducido en: v1.1.0
Si x no es negativo, entonces erf(x/(σ√2)) es la probabilidad de que una variable aleatoria con distribución normal y desviación estándar σ tome un valor que difiera del valor esperado en más de x.
Sintaxis
erf(x)Argumentos
Valor devuelto
Devuelve el valor de la función de error Float*
Ejemplos
Regla de las tres sigmas
SELECT erf(3 / sqrt(2))┌─erf(divide(3, sqrt(2)))─┐
│ 0.9973002039367398 │
└─────────────────────────┘erfc
Introducido en: v1.1.0
Devuelve un número próximo a 1-erf(x) sin pérdida de precisión para valores grandes de x.
Sintaxis
erfc(x)Argumentos
Valor devuelto
Devuelve el valor de la función de error complementaria Float*
Ejemplos
Ejemplo de uso
SELECT erfc(0);1exp
Introducido en: v1.1.0
Devuelve e elevada a la potencia de x, donde x es el argumento dado de la función.
Sintaxis
exp(x)Argumentos
Valor devuelto
Devuelve e^x Float*
Ejemplos
Uso básico
SELECT round(exp(-1), 4)┌─round(exp(-1), 4)─┐
│ 0.3679 │
└───────────────────┘exp10
Introducido en: v1.1.0
Devuelve 10 elevado a la potencia del argumento dado.
Sintaxis
exp10(x)Argumentos
Valor devuelto
Devuelve 10^x Float*
Ejemplos
Ejemplo de uso
SELECT exp10(2);100exp2
Introducido en: v1.1.0
Devuelve 2 elevado al argumento dado.
Sintaxis
exp2(x)Argumentos
Valor devuelto
Devuelve 2^x Float*
Ejemplos
Ejemplo de uso
SELECT exp2(3);8factorial
Introducido en: v22.11.0
Calcula el factorial de un valor entero.
El factorial de 0 es 1. Asimismo, la función factorial() devuelve 1 para cualquier valor negativo.
El valor positivo máximo del argumento de entrada es 20; un valor de 21 o superior provocará una excepción.
Sintaxis
factorial(n)Argumentos
n— Valor entero para el que se calcula el factorial. El valor máximo es 20.(U)Int8/16/32/64
Valor devuelto
Devuelve el factorial del valor de entrada como UInt64. Devuelve 1 para el valor de entrada 0 o cualquier valor negativo. UInt64
Ejemplos
Ejemplo de uso
SELECT factorial(10)3628800hypot
Introducido en: v20.12.0
Devuelve la longitud de la hipotenusa de un triángulo rectángulo.
hypot evita los problemas que se producen al elevar al cuadrado números muy grandes o muy pequeños.
Sintaxis
hypot(x, y)Argumentos
x— El primer cateto de un triángulo rectángulo.(U)Int*oFloat*oBFloat16oDecimal*y— El segundo cateto de un triángulo rectángulo.(U)Int*oFloat*oBFloat16oDecimal*
Valor devuelto
Devuelve la longitud de la hipotenusa de un triángulo rectángulo. Float64
Ejemplos
Uso básico
SELECT hypot(1, 1)1.4142135623730951intExp10
Introducido en: v1.1.0
Igual que exp10, pero devuelve un número UInt64.
Sintaxis
intExp10(x)Argumentos
Valor devuelto
Devuelve 10^x. UInt64
Ejemplos
Ejemplo de uso
SELECT intExp10(2);100intExp2
Introducido en: v1.1.0
Igual que exp2, pero devuelve un número UInt64.
Sintaxis
intExp2(x)Argumentos
Valor devuelto
Devuelve 2^x. UInt64
Ejemplos
Ejemplo de uso
SELECT intExp2(3);8isPrime
Introducido en: v26.5.0
Devuelve 1 si el argumento es un número primo; de lo contrario, 0.
Usa un bitmap de búsqueda exacta para valores pequeños y una prueba de Miller-Rabin determinista para valores más grandes. El resultado es exacto para todos los tipos de entrada admitidos.
Para tipos de enteros sin signo de mayor tamaño (UInt128, UInt256), use isProbablePrime en su lugar.
Sintaxis
isPrime(n)Argumentos
Valor devuelto
Devuelve 1 si n es primo; en caso contrario, 0. UInt8
Ejemplos
Número primo
SELECT isPrime(17)1Número compuesto
SELECT isPrime(18)0Número primo grande de UInt64
SELECT isPrime(18446744073709551557)1Valor máximo de UInt64
SELECT isPrime(18446744073709551615)0isProbablePrime
Introducido en: v26.5.0
Devuelve 1 si el argumento probablemente es primo y 0 si sin duda es compuesto.
Para UInt8, UInt16, UInt32 y UInt64, el resultado es exacto y coincide con
isPrime. El argumento rounds se ignora.
Para UInt128 y UInt256, un valor de retorno de 1 es probabilístico. El argumento opcional rounds controla
cuántas rondas de Miller-Rabin se usan:
cuantas más rondas, menor es la probabilidad de un falso positivo y mayor el tiempo de ejecución. Con testigos aleatorios uniformes,
la tasa de falsos positivos para un compuesto fijo está acotada por 4^(-rounds); el valor predeterminado de 25
mantiene esta cota por debajo de 10^-15, y el máximo de 256 la mantiene por debajo de 10^-154.
La función es determinista: los testigos se derivan de n, por lo que el mismo par (n, rounds) siempre produce
el mismo resultado. La cota 4^(-rounds) es la probabilidad por entrada con testigos aleatorios uniformes;
con nuestra inicialización determinista, en cambio, describe una fracción de las entradas: un compuesto que engañe a su
secuencia de testigos devolverá 1 de forma reproducible.
Sintaxis
isProbablePrime(n[, rounds])Argumentos
n— Entero sin signo que se va a comprobar si es primo.UInt8oUInt16oUInt32oUInt64oUInt128oUInt256rounds— Constante entera positiva opcional en[1, 256]. Número de rondas de Miller-Rabin paraUInt128/UInt256(se ignora en tipos más pequeños). El valor predeterminado es25.UInt8oUInt16oUInt32oUInt64
Valor devuelto
Devuelve 1 si n probablemente es primo y 0 si definitivamente es compuesto. UInt8
Ejemplos
Primo pequeño
SELECT isProbablePrime(17)1Número compuesto pequeño
SELECT isProbablePrime(18)0El número primo UInt64 más grande (resultado exacto)
SELECT isProbablePrime(18446744073709551557)1Número primo de Mersenne M_127 (UInt128)
SELECT isProbablePrime(toUInt128('170141183460469231731687303715884105727'))1Número primo del campo base de Curve25519 2^255 - 19 (UInt256)
SELECT isProbablePrime(toUInt256('57896044618658097711785492504343953926634992332820282019728792003956564819949'))1Verificación más rápida, con menor fiabilidad: 5 rondas
SELECT isProbablePrime(toUInt256('57896044618658097711785492504343953926634992332820282019728792003956564819949'), 5)1lgamma
Introducido en: v1.1.0
Devuelve el logaritmo de la función gamma.
Sintaxis
lgamma(x)Argumentos
Valor devuelto
Devuelve el logaritmo de la función gamma de x. Float*
Ejemplos
Ejemplo de uso
SELECT lgamma(5);3.1780538303479458log
Introducido en: v1.1.0
Devuelve el logaritmo natural del argumento.
Sintaxis
log(x)Alias: ln
Argumentos
Valor devuelto
Devuelve el logaritmo natural de x. Float*
Ejemplos
Ejemplo de uso
SELECT log(10);2.3025850938475476log10
Introducido en: v1.1.0
Devuelve el logaritmo decimal del argumento.
Sintaxis
log10(x)Argumentos
Valor devuelto
Devuelve el logaritmo decimal de x. Float*
Ejemplos
Ejemplo de uso
SELECT log10(100);2log1p
Introducida en: v20.12.0
Calcula log(1+x).
El cálculo de log1p(x) es más preciso que log(1+x) para valores pequeños de x.
Sintaxis
log1p(x)Argumentos
Valor devuelto
Devuelve valores en el intervalo: -∞ < log1p(x) < +∞ Float64
Ejemplos
Ejemplo de uso
SELECT log1p(0)0log2
Introducido en: v1.1.0
Devuelve el logaritmo binario del argumento.
Sintaxis
log2(x)Argumentos
Valor devuelto
Devuelve el logaritmo binario de x. Float*
Ejemplos
Ejemplo de uso
SELECT log2(8);3pi
Introducido en: v1.1.0
Devuelve pi (π).
Sintaxis
pi()Argumentos
- Ninguno.
Valor devuelto
Devuelve pi Float64
Ejemplos
Ejemplo de uso
SELECT pi();3.141592653589793pow
Introducido en: v1.1.0
Devuelve x elevado a y.
Sintaxis
pow(x, y)Alias: power
Argumentos
x— La base.(U)Int8/16/32/64oFloat*oBFloat16oDecimal*y— El exponente.(U)Int8/16/32/64oFloat*oBFloat16oDecimal*
Valor devuelto
Devuelve x^y como Float64
Ejemplos
Ejemplo de uso
SELECT pow(2, 3);8proportionsZTest
Introducido en: v22.3.0
Devuelve estadísticas de prueba para la prueba Z de dos proporciones, una prueba estadística para comparar las proporciones de dos poblaciones, x e y. La función admite métodos de estimación combinada y no combinada para el error estándar. En la versión combinada, las dos proporciones se promedian y se utiliza una sola proporción para estimar el error estándar. En la versión no combinada, las dos proporciones se utilizan por separado.
Sintaxis
proportionsZTest(successes_x, successes_y, trials_x, trials_y, conf_level, pool_type)Argumentos
successes_x— Número de éxitos en la población x.UInt64successes_y— Número de éxitos en la población y.UInt64trials_x— Número de ensayos en la población x.UInt64trials_y— Número de ensayos en la población y.UInt64conf_level— Nivel de confianza de la prueba.Float64pool_type— Selección del método de agrupación para estimar el error estándar. Puede ser 'unpooled' o 'pooled'.String
Valor devuelto
Devuelve una tupla que contiene: z_stat (estadístico Z), p_val (valor p), ci_low (límite inferior del intervalo de confianza), ci_high (límite superior del intervalo de confianza). Tuple(Float64, Float64, Float64, Float64)
Ejemplos
Ejemplo de uso
SELECT proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled');┌─proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled')───────────────────────────────┐
│ (-0.20656724435948853,0.8363478437079654,-0.09345975390115283,0.07563797172293502) │
└────────────────────────────────────────────────────────────────────────────────────┘radians
Introducido en: v22.2.0
Convierte grados en radianes.
Sintaxis
radians(x)Argumentos
Valor devuelto
Devuelve un valor en radianes Float64
Ejemplos
Ejemplo de uso
SELECT radians(180)3.141592653589793sigmoid
Introducido en: v20.1.0
Calcula la función sigmoide: 1 / (1 + exp(-x)). La función sigmoide asigna cualquier número real al intervalo (0, 1) y se utiliza habitualmente en el aprendizaje automático.
Sintaxis
sigmoid(x)Argumentos
Valor devuelto
Devuelve la sigmoide del valor de entrada, en el intervalo (0, 1). Float64
Ejemplos
Uso básico
SELECT sigmoid(0)0.5sign
Introducido en: v21.2.0
Devuelve el signo de un número real.
Sintaxis
sign(x)Argumentos
Valor devuelto
Devuelve -1 para x < 0, 0 para x = 0 y 1 para x > 0. Int8
Ejemplos
Signo de cero
SELECT sign(0)0Signo positivo
SELECT sign(1)1Signo negativo
SELECT sign(-1)-1sin
Introducido en: v1.1.0
Devuelve el seno del argumento.
Sintaxis
sin(x)Argumentos
Valor devuelto
Devuelve el seno de x.
Ejemplos
simple
SELECT sin(1.23)0.9424888019316975sinh
Introducido en: v20.12.0
Devuelve el seno hiperbólico.
Sintaxis
sinh(x)Argumentos
Valor devuelto
Devuelve valores en el intervalo: -∞ < sinh(x) < +∞ Float64
Ejemplos
Ejemplo de uso
SELECT sinh(0)0sqrt
Introducido en: v1.1.0
Devuelve la raíz cuadrada del argumento.
Sintaxis
sqrt(x)Argumentos
Valor devuelto
Devuelve la raíz cuadrada de x Float*
Ejemplos
Ejemplo de uso
SELECT sqrt(16);4tan
Introducido en: v1.1.0
Devuelve la tangente del argumento.
Sintaxis
tan(x)Argumentos
Valor devuelto
Devuelve la tangente de x. Float*
Ejemplos
Ejemplo de uso
SELECT tan(0);0tanh
Introducido en: v20.1.0
Devuelve la tangente hiperbólica.
Sintaxis
tanh(x)Argumentos
Valor devuelto
Devuelve valores en el intervalo: -1 < tanh(x) < 1 Float*
Ejemplos
Ejemplo de uso
SELECT tanh(0)0tgamma
Introducido en: v1.1.0
Devuelve la función gamma.
Sintaxis
tgamma(x)Argumentos
Valor devuelto
Devuelve el valor de la función gamma Float*
Ejemplos
Ejemplo de uso
SELECT tgamma(5);24widthBucket
Introducido en: v23.3.0
Devuelve el número del bucket en el que cae el parámetro operand en un histograma con count buckets de igual amplitud que abarcan el intervalo de low a high. Devuelve 0 si operand es menor que low, y devuelve count+1 si operand es mayor o igual que high.
También existe un alias que no distingue entre mayúsculas y minúsculas, llamado WIDTH_BUCKET, para ofrecer compatibilidad con otras bases de datos.
Sintaxis
widthBucket(operand, low, high, count)Alias: width_bucket
Argumentos
operand— El valor para el que se debe determinar el bucket.(U)Int8/16/32/64low— El límite inferior del intervalo del histograma.(U)Int8/16/32/64high— El límite superior del rango del histograma.(U)Int8/16/32/64count— El número de buckets de igual ancho. No puede ser cero.UInt8/16/32/64
Valor devuelto
Devuelve el número de bucket como un valor entero. Devuelve 0 si operand < low y count+1 si operand >= high. UInt8/16/32/64
Ejemplos
Ejemplo de uso
SELECT widthBucket(10.15, -8.6, 23, 18)11