Todos os produtos
Search
Central de documentação

Simple Log Service:Funções matemáticas

Última atualização: Jul 03, 2026

Este tópico explica a sintaxe básica das funções matemáticas e fornece exemplos.

A tabela a seguir lista as funções matemáticas compatíveis com o Simple Log Service.

Nota
  • Os seguintes operadores são suportados:

    +-*/%

    Por padrão, o operador / descarta a parte decimal do resultado. Para mantê-la, use uma operação como x*1.0/y.

  • Em uma instrução analítica do Log Service, strings devem estar entre aspas simples (''). O Log Service interpreta texto sem aspas ou entre aspas duplas ("") como nome de campo ou coluna. Por exemplo, 'status' representa a string 'status', enquanto status ou "status" representa o campo de log status.

Função

Sintaxe

Descrição

SQL

SPL

função abs

abs(x)

Retorna o valor absoluto de x.

função acos

acos(x)

Retorna o arco cosseno de x.

função asin

asin(x)

Retorna o arco seno de x.

função atan

atan(x)

Retorna o arco tangente de x.

função atan2

atan2(x, y)

Retorna o arco tangente de x dividido por y.

função cbrt

cbrt(x)

Retorna a raiz cúbica de x.

função ceil

ceil(x)

Arredonda x para cima até o inteiro mais próximo.

Esta função é um alias da função ceiling.

função ceiling

ceiling(x)

Arredonda x para cima até o inteiro mais próximo.

função cos

cos(x)

Retorna o cosseno de x.

função cosh

cosh(x)

Retorna o cosseno hiperbólico de x.

função cosine_similarity

cosine_similarity(x, y)

Retorna a similaridade de cosseno entre x e y.

×

função degrees

degrees(x)

Converte um ângulo de radianos para graus.

função e

e()

Retorna o valor de e, base do logaritmo natural.

função exp

exp(x)

Eleva e à potência de x.

×

função floor

floor(x)

Arredonda x para baixo até o inteiro mais próximo.

função from_base

from_base(x, y)

Converte a string x na base y para um número.

função ln

ln(x)

Retorna o logaritmo natural de x.

função infinity

infinity()

Retorna um valor que representa infinito positivo.

função is_nan

is_nan(x)

Verifica se x é Not a Number (NaN).

função log2

log2(x)

Retorna o logaritmo de x na base 2.

função log10

log10(x)

Retorna o logaritmo de x na base 10.

função log

log(x, y)

Retorna o logaritmo de x na base y.

×

função mod

mod(x, y)

Retorna o resto da divisão de x por y.

função nan

nan()

Retorna um valor NaN.

função pi

pi()

Retorna o valor de π com 15 casas decimais.

função pow

pow(x, y)

Eleva x à potência de y.

Esta função é um alias da função power.

função power

power(x, y)

Eleva x à potência de y.

função radians

radians(x)

Converte um ângulo de graus para radianos.

função rand

rand()

Retorna um número aleatório.

função random

random()

Retorna um número aleatório no intervalo [0, 1).

random(x)

Retorna um número aleatório no intervalo [0, x).

função round

round(x)

Arredonda x para o inteiro mais próximo.

round(x, n)

Arredonda x para n casas decimais.

função sign

sign(x)

Retorna o sinal de x como 1, 0 ou -1.

×

função sin

sin(x)

Retorna o seno de x.

função sqrt

sqrt(x)

Retorna a raiz quadrada de x.

função tan

tan(x)

Retorna a tangente de x.

função tanh

tanh(x)

Retorna a tangente hiperbólica de x.

função to_base

to_base(x, y)

Converte o número x para sua representação em string na base y.

×

função truncate

truncate(x)

Remove a parte fracionária de x.

função width_bucket

width_bucket(x, bound1, bound2, numBuckets)

Retorna o número do bucket de x em um intervalo dividido em buckets de largura igual.

×

width_bucket(x, bins)

Usa um array para especificar o intervalo dos buckets e retorna o bucket ao qual x pertence.

×

Função abs

A função abs calcula o valor absoluto de x.

Syntax

abs(x)

Parameters

Parâmetro

Descrição

x

O parâmetro pode ser smallint, integer, real, tinyint, bigint, double ou decimal.

Return value type

O valor retornado tem o mesmo tipo de dados do parâmetro de entrada.

Examples

Calcule o valor absoluto de -25.

  • Instrução de consulta e análise

    * | select abs(-25)
  • Resultados da consulta e análise: 25.

Função acos

Calcula o arco cosseno de x.

Syntax

acos(x)

Parameters

Parâmetro

Descrição

x

Este parâmetro deve ser um double no intervalo [-1, 1].

Se o valor estiver fora desse intervalo, a função retorna NaN.

Return value type

Um valor double.

Examples

Este exemplo calcula o arco cosseno de pi()/4.

  • Instrução de consulta

    * | SELECT acos(pi()/4)
  • Resultados da consulta e análise: A consulta retorna 0.6674572160283838.

Função asin

Calcula o arco seno de x.

Syntax

asin(x)

Parameters

Parâmetro

Descrição

x

Um valor double no intervalo [-1, 1].

Se o valor estiver fora desse intervalo, a função retorna NaN.

Return value type

double

Examples

Calcula o arco seno de π/4.

  • Instrução de consulta e análise

    * | SELECT  asin(pi()/4)
  • Resultados da consulta e análise: 0.9033391101131845.

Função atan

Calcula o arco tangente de x.

Syntax

atan(x)

Parameters

Parâmetro

Descrição

x

O valor deve ser um double.

Return value type

Retorna um valor double.

Examples

Este exemplo calcula o arco tangente de pi()/4.

  • Instrução de consulta

    * | SELECT atan(pi()/4)
  • Resultado da consulta: 0.6657737500283538

Função atan2

Calcula o arco tangente de x dividido por y.

Syntax

atan2(x, y)

Parameters

Parâmetro

Descrição

x

Um valor double.

y

Um valor double.

Return value type

Retorna um valor double.

Examples

Calcule o arco tangente de π dividido por 6.

  • Instrução de consulta

    * | SELECT atan2(pi(),6)
  • Resultado da consulta: O valor retornado é 0.48234790710102495.

Função cbrt

Calcula a raiz cúbica de x.

Syntax

cbrt(x)

Parameters

Parâmetro

Descrição

x

Um valor double.

Return value type

Retorna um valor double.

Examples

Calcule a raiz cúbica de 100.

  • Instrução de consulta

    * | select cbrt(100)
  • Resultado da consulta: 4.641588833612779.

Função ceil

A função ceil arredonda x para cima até o inteiro mais próximo. Ela é um alias da função ceiling.

Syntax

ceil(x)

Parameters

Parâmetro

Descrição

x

Um valor dos tipos tinyint, smallint, integer, real, bigint, double ou decimal.

  • Se x for um número positivo, a função arredonda o valor para longe de 0.

  • Se x for um número negativo, a função arredonda o valor em direção a 0.

Return value type

O valor retornado tem o mesmo tipo de dados do parâmetro.

Examples

Arredonde o valor do campo request_time para cima até o inteiro mais próximo.

  • Campo de exemplo

    request_time:9.3
  • Instrução de consulta

    * | SELECT ceil(request_time) AS request_time
  • Resultados da consulta: O valor da coluna request_time é 10.0.

Função ceiling

A função ceiling arredonda x para cima até o inteiro mais próximo.

Syntax

ceiling(x)

Parameters

Parâmetro

Descrição

x

Um valor do tipo tinyint, smallint, integer, real, bigint, double ou decimal.

  • Se x for um número positivo, a função arredonda o valor para longe de 0.

  • Se x for um número negativo, a função arredonda o valor em direção a 0.

Return value type

O mesmo tipo de dados do parâmetro.

Examples

Arredonde o valor do campo request_time para cima até o inteiro mais próximo.

  • Campo de exemplo

    request_time:9.3
  • Instrução de consulta e análise

    * | SELECT ceiling(request_time) AS request_time
  • Resultados da consulta e análise: A coluna request_time é 10.0.

Função cos

Calcula o cosseno de x.

Syntax

cos(x)

Parameters

Parâmetro

Descrição

x

O parâmetro deve ser um double.

Return value type

Retorna um double.

Examples

Calcula o cosseno de 30 graus.

  • Instrução de consulta e análise

    * | SELECT cos(pi()/6)
  • Resultado da consulta e análise: 0.8660254037844387.

Função cosh

A função cosh calcula o cosseno hiperbólico de x.

Syntax

cosh(x)

Parameters

Parâmetro

Descrição

x

O valor é um double.

Return value type

Retorna um valor double.

Examples

Calcule o cosseno hiperbólico de um ângulo de 30°.

  • Instrução de consulta e análise

    * | SELECT cosh(pi()/6)
  • Resultados da consulta e análise: 1.1402383210764287.

Cosine_similarity

Esta função calcula a similaridade de cosseno entre x e y.

Syntax

cosine_similarity(x, y)

Parameters

Parâmetro

Descrição

x

O parâmetro é um map(varchar, double).

y

O parâmetro é um map(varchar, double).

Return value type

Retorna um valor double.

Examples

Calcula a similaridade de cosseno entre dois vetores.

  • Consulta

    * | SELECT cosine_similarity(MAP(ARRAY['a'], ARRAY[1.0]), MAP(ARRAY['a'], ARRAY[2.0]))
  • A consulta retorna 1.0.

Função degrees

A função degrees converte um ângulo de radianos para graus.

Syntax

degrees(x)

Parameters

Parâmetro

Descrição

x

O ângulo em radianos, especificado como um valor double.

Return value type

O ângulo equivalente em graus, retornado como um valor double.

Examples

Converta π radianos para graus.

  • Instrução de consulta

    * | SELECT degrees(pi())
  • Resultados da consulta e análise: O resultado é 180.0.

Função e

A função e retorna o valor de e, base do logaritmo natural.

Syntax

e()

Return value type

Um valor double.

Examples

Retorna o valor de e.

  • Consulta

    * | SELECT e()
  • Resultados da consulta e análise: O valor retornado é 2.718281828459045.

Função exp

Calcula e elevado à potência de x.

Syntax

exp(x)

Parameters

Parâmetro

Descrição

x

Um valor double.

Return value type

Um valor double.

Examples

Calcula e elevado à potência de 3.

  • Instrução de consulta e análise

    * | SELECT exp(3)
  • Resultado da consulta e análise: O valor retornado é 20.085536923187669.

Função floor

A função floor arredonda x para baixo até o inteiro mais próximo.

Syntax

floor(x)

Parameters

Parâmetro

Descrição

x

O valor deve ser tinyint, smallint, integer, real, bigint, double ou decimal.

  • Se x for positivo, a função o arredonda em direção a 0.

  • Se x for negativo, a função o arredonda para longe de 0.

Return value type

Retorna um valor double.

Examples

Arredonde o valor do campo request_time para baixo até o inteiro mais próximo.

  • Campo de exemplo

    request_time:10.3
  • Instrução de consulta

    * | SELECT floor(request_time) AS request_time
  • Resultados da consulta e análise: O valor da coluna request_time é 10.0.

Função from_base

A função from_base converte a string x da base y para um número.

Syntax

from_base(x, y)

Parameters

Parâmetro

Descrição

x

Uma string varchar.

y

A base do número. O valor deve ser um bigint de 2 a 36.

Return value type

Retorna um bigint.

Examples

Converte a string binária '1101' para seu equivalente decimal.

  • Instrução de consulta

    * | SELECT  from_base('1101',2)
  • Resultados: O valor retornado é 13.

Função ln

A função ln calcula o logaritmo natural de x.

Syntax

ln(x)

Parameters

Parâmetro

Descrição

x

Um valor double maior que 0.

Return value type

Um valor double.

Examples

Este exemplo calcula o logaritmo natural de 2.

  • Instrução de consulta e análise

    * | SELECT ln(2)
  • Resultados da consulta e análise: Retorna 0.6931471805599453.

Função infinity

A função infinity retorna infinito positivo.

Syntax

infinity()

Return value type

double

Examples

Retorna infinito positivo.

  • Instrução de consulta e análise

    * | SELECT infinity()
  • Resultados da consulta e análise: Infinity.

Função is_nan

A função is_nan retorna true se x for NaN (Not a Number) e false caso contrário.

Syntax

is_nan(x)

Parameters

Parâmetro

Descrição

x

Um valor double.

Return value type

Retorna um valor booleano.

Examples

Verifique se o valor do campo status é NaN.

  • Instrução de consulta e análise

    * | SELECT is_nan(status)
  • Resultados da consulta e análise: A instrução retorna false.

Função log2

A função log2 calcula o logaritmo de x na base 2.

Syntax

log2(x)

Parameters

Parâmetro

Descrição

x

Um valor double.

Return value type

Retorna um valor double.

Examples

Calcule o logaritmo de 100 na base 2.

  • Instrução de consulta e análise

    * | SELECT log2(100)
  • Resultados da consulta e análise: O valor retornado é 6.643856189774725.

Função log10

A função log10 calcula o logaritmo de x na base 10.

Syntax

log10(x)

Parameters

Parâmetro

Descrição

x

Um valor double.

Return value type

Retorna um valor double.

Examples

Este exemplo calcula o logaritmo de 100 na base 10.

  • Instrução de consulta e análise

    * | SELECT log10(100)
  • Resultado da consulta e análise: 2.0.

Função log

A função log calcula o logaritmo de x na base y.

Syntax

log(x, y)

Parameters

Parâmetro

Descrição

x

O valor deve ser um double.

y

O valor deve ser um double.

Return value type

Retorna um valor double.

Examples

Calcula o logaritmo de 100 na base 5.

  • Consulta

    * | SELECT log(100,5)
  • Resultado: 2.8613531161467867.

Função mod

A função mod retorna o resto da divisão de x por y.

Syntax

mod(x, y)

Parameters

Parâmetro

Descrição

x

Um valor do tipo tinyint, smallint, integer, real, bigint, double ou decimal.

y

Um valor do tipo tinyint, smallint, integer, real, bigint, double ou decimal.

Return value type

O valor retornado tem o mesmo tipo de dados dos parâmetros de entrada.

Examples

Calcule o resto de 100 dividido por 30.

  • Instrução de consulta

    * | SELECT mod(100,30)
  • Resultado da consulta e análise: Retorna 10.

Função nan

A função nan retorna NaN (Not a Number).

Syntax

nan()

Return value type

Double.

Examples

Retorna um valor NaN.

  • Instrução de consulta

    * | SELECT nan()
  • Resultados da consulta: O valor retornado é NaN.

Função pi

Esta função retorna o valor de π, com precisão de 15 casas decimais.

Syntax

pi()

Return value type

Retorna um valor double.

Examples

Este exemplo retorna o valor de π.

  • Instrução de consulta e análise

    * | SELECT pi()
  • Resultados da consulta e análise: 3.141592653589793.

Função pow

A função pow retorna x elevado à potência de y. É um alias da função power.

Syntax

pow(x, y)

Parameters

Parâmetro

Descrição

x

Um valor double.

y

Um valor double.

Return value type

Retorna um valor double.

Examples

Eleve 2 à potência de 5.

  • Instrução de consulta

    * | SELECT pow(2,5)
  • Resultados da consulta e análise: 32.0.

Função power

Retorna x elevado à potência de y.

Syntax

power(x, y)

Parameters

Parâmetro

Descrição

x

Um valor double.

y

Um valor double.

Return value type

Um valor double.

Examples

Calcule 2 elevado à potência de 5.

  • Instrução de consulta e análise

    * | SELECT power(2,5)
  • Resultados da consulta e análise: Retorna 32.0.

Função radians

Converte um ângulo de graus para radianos.

Syntax

radians(x)

Parameters

Parâmetro

Descrição

x

Deve ser um double.

Return value type

Retorna um double.

Examples

Converta 180 graus para radianos.

  • Instrução de consulta

    * | SELECT radians(180)
  • Resultados da consulta: 3.141592653589793

Função rand

A função rand retorna um número aleatório.

Syntax

rand()

Return value type

double

Examples

A consulta a seguir retorna um número aleatório.

  • Instrução de consulta

    * | select rand()
  • Resultados da consulta e análise: Retorna um valor aleatório, como 0.8742241064002435.

Função random

A função random retorna um número aleatório no intervalo [0,x).

Syntax

  • Retorna um valor aleatório de dupla precisão no intervalo [0, 1.0).

    random()
  • Retorna um inteiro aleatório no intervalo [0, x).

    random(x)

Parameters

Parâmetro

Descrição

x

Um valor tinyint, smallint, integer ou bigint.

Return value type

Retorna um valor com o mesmo tipo de dados do parâmetro de entrada.

Examples

Gere um número aleatório no intervalo [0, 100).

  • Instrução de consulta

    * | select random(100)
  • Resultados da consulta: Retorna um inteiro aleatório, por exemplo, 44.

Função round

A função round arredonda x. Se você especificar n, a função arredonda o valor para n casas decimais. Se omitir n, ela arredonda x para o inteiro mais próximo.

Syntax

  • Arredonda x para o inteiro mais próximo.

    round(x)
  • Arredonda x para n casas decimais.

    round(x, n)

Parameters

Parâmetro

Descrição

x

Um valor tinyint, smallint, integer ou bigint.

n

O número de casas decimais a serem mantidas.

Return value type

O valor retornado tem o mesmo tipo de dados do parâmetro x.

Examples

Este exemplo compara as visualizações de página (PVs) de hoje com as de ontem e expressa a mudança como porcentagem.

  • Instrução de consulta

    * | SELECT diff [1] AS today, round((diff [3] -1.0) * 100, 2) AS growth FROM (SELECT compare(pv, 86400) as diff FROM (SELECT COUNT(*) as pv FROM website_log))
  • A consulta retorna today como 1564075.0 e growth como -22.11.

Função sign

A função sign retorna o sinal de x como 1, 0 ou -1.

Syntax

sign(x)

Parameters

Parâmetro

Descrição

x

A expressão numérica a ser avaliada. Seu tipo de dados pode ser integer, smallint, tinyint, real, double, bigint ou decimal(p,s).

  • Se x for um número positivo, a função retorna 1.

  • Se x for 0, a função retorna 0.

  • Se x for um número negativo, a função retorna -1.

Return value type

Retorna o mesmo tipo de dados do parâmetro de entrada.

Examples

Calcule o sinal do número 10.

  • Instrução de consulta

    * | SELECT sign(10)
  • Resultado da consulta: O valor retornado é 1.

Função sin

Esta função calcula o seno de x.

Syntax

sin(x)

Parameters

Parâmetro

Descrição

x

Um valor double.

Return value type

Retorna um valor double.

Examples

Este exemplo calcula o seno de 90 graus.

  • Instrução de consulta e análise

    * | select sin(pi()/2)
  • Resultados da consulta e análise: Retorna 1.0.

Função sqrt

Calcula a raiz quadrada de x.

Syntax

sqrt(x)

Parameters

Parâmetro

Descrição

x

Um valor double.

Return value type

Retorna um valor double.

Examples

Calcule a raiz quadrada de 100.

  • Instrução de consulta e análise

    * | select sqrt(100)
  • Resultados da consulta e análise: O resultado é 10.0.

Função tan

A função tan calcula a tangente de x.

Syntax

tan(x)

Parameters

Parâmetro

Descrição

x

Um valor de dupla precisão.

Return value type

Um valor de dupla precisão.

Examples

Calcule a tangente de 30 graus.

  • Instrução de consulta

    * | SELECT tan(pi()/6)
  • Resultados da consulta: 0.5773502691896257.

Função tanh

A função tanh calcula a tangente hiperbólica de x.

Syntax

tanh(x)

Parameters

Parâmetro

Descrição

x

Deve ser um valor double.

Return value type

Retorna um valor double.

Examples

Este exemplo calcula a tangente hiperbólica de π/6 radianos (30 graus).

  • Consulta

    * | SELECT tanh(pi()/6)
  • Resultado da consulta: A consulta retorna 0.4804727781564516.

Função to_base

Esta função converte o bigint x para sua representação em string na base y.

Syntax

to_base(x, y)

Parameters

Parâmetro

Descrição

x

O bigint a ser convertido.

y

A base para a string de saída. O valor deve ser um bigint de 2 a 36, inclusive.

Return value type

Retorna um valor varchar.

Examples

Converta 180 para uma string binária.

  • Instrução de consulta

    * | SELECT  to_base(180, 2)
  • Resultado da consulta: 10110100

Função truncate

A função truncate remove a parte fracionária de x.

Syntax

truncate(x)

Parameters

Parâmetro

Descrição

x

Um valor double.

Return value type

Retorna um valor double.

Examples

Remova a parte fracionária de 11.11.

  • Instrução de consulta

    * | SELECT  truncate(11.11)
  • Resultado da consulta: 11.0.

Função width_bucket

A função width_bucket retorna o número do bucket para um valor x.

Syntax

  • Divide um intervalo numérico em um número especificado de buckets de largura igual e retorna o número do bucket para x.

    width_bucket(x, bound1, bound2, numBuckets)
  • Retorna o número do bucket para x com base em um array especificado de limites de bucket.

    width_bucket(x, bins)

Parameters

Parâmetro

Descrição

x

O valor a ser colocado em bucket. Este valor deve ser do tipo double.

bound1

Especifica o limite inferior do intervalo numérico.

bound2

Especifica o limite superior do intervalo numérico.

numBuckets

O número de buckets. O valor deve ser um inteiro maior que 0.

bins

Use bins, um array do tipo double, para especificar o intervalo do bucket.

Return value type

Retorna um valor do tipo bigint.

Nota
  • Se x estiver dentro do intervalo especificado, o bucket ao qual x pertence será retornado.

  • Se x estiver abaixo do limite inferior, a função retorna 0.

  • Se x for maior ou igual ao limite superior, a função retorna numBuckets+1.

Examples

  • Exemplo 1: Divida o intervalo numérico [10, 80) em 7 buckets de largura igual e retorne o número do bucket para cada valor no campo request_time.

    • Instrução de consulta

      * | SELECT request_time, width_bucket(request_time, 10, 80,7) AS numBuckets
    • Resultados da consulta e análise: A consulta retorna as colunas request_time e numBuckets. Essas colunas mostram o número do bucket correspondente a cada tempo de requisição. Por exemplo, se request_time for 26.0, numBuckets será 2; e se request_time for 49.0, numBuckets será 4.

  • Exemplo 2: Use um array para definir os limites dos buckets e retorne o número do bucket para cada valor no campo request_time.

    • Instrução de consulta

      * | SELECT request_time, width_bucket(request_time, array[10,20,30,40,50,60,70,80]) AS numBuckets
    • Resultados da consulta e análise: A consulta retorna as colunas request_time e numBuckets. Essas colunas mostram o número do bucket atribuído a cada tempo de requisição com base no array de limites personalizado. Por exemplo, se request_time for 26.0, numBuckets será 2; e se request_time for 54.0, numBuckets será 5.