All Products
Search
Document Center

Simple Log Service:Fungsi matematika

Last Updated:Jun 22, 2026

Topik ini menjelaskan sintaksis dasar fungsi matematika beserta contohnya.

Tabel berikut mencantumkan fungsi matematika yang didukung oleh Simple Log Service.

Catatan
  • Operator berikut didukung:

    +-*/%

    Secara default, operator / membuang bagian desimal dari hasilnya. Untuk mempertahankan bagian desimal, gunakan operasi seperti x*1.0/y.

  • Dalam pernyataan analitik Log Service, string harus diapit dengan tanda petik tunggal (''). Log Service menginterpretasikan teks tanpa tanda kutip atau teks yang diapit dengan tanda petik ganda ("") sebagai nama field atau nama kolom. Misalnya, 'status' merepresentasikan string 'status', sedangkan status atau "status" merepresentasikan field log status.

Function

Syntax

Description

SQL

SPL

abs function

abs(x)

Mengembalikan nilai absolut dari x.

acos function

acos(x)

Mengembalikan arc cosine dari x.

asin function

asin(x)

Mengembalikan arc sine dari x.

atan function

atan(x)

Mengembalikan arc tangent dari x.

atan2 function

atan2(x, y)

Mengembalikan arc tangent dari x dibagi dengan y.

cbrt function

cbrt(x)

Mengembalikan akar pangkat tiga dari x.

ceil function

ceil(x)

Membulatkan x ke atas ke bilangan bulat terdekat.

Fungsi ini merupakan alias dari fungsi ceiling.

ceiling function

ceiling(x)

Membulatkan x ke atas ke bilangan bulat terdekat.

cos function

cos(x)

Mengembalikan cosinus dari x.

cosh function

cosh(x)

Mengembalikan cosinus hiperbolik dari x.

cosine_similarity function

cosine_similarity(x, y)

Mengembalikan kemiripan cosinus antara x dan y.

×

degrees function

degrees(x)

Mengonversi sudut dari radian ke derajat.

e function

e()

Mengembalikan nilai e, basis logaritma natural.

exp function

exp(x)

Memangkatkan e dengan pangkat x.

×

floor function

floor(x)

Membulatkan x ke bawah ke bilangan bulat terdekat.

from_base function

from_base(x, y)

Mengonversi string basis-y x menjadi angka.

ln function

ln(x)

Mengembalikan logaritma natural dari x.

infinity function

infinity()

Mengembalikan nilai yang merepresentasikan tak hingga positif.

is_nan function

is_nan(x)

Memeriksa apakah x adalah Not a Number (NaN).

log2 function

log2(x)

Mengembalikan logaritma basis-2 dari x.

log10 function

log10(x)

Mengembalikan logaritma basis-10 dari x.

log function

log(x, y)

Mengembalikan logaritma basis-y dari x.

×

mod function

mod(x, y)

Mengembalikan sisa pembagian x dibagi dengan y.

nan function

nan()

Mengembalikan nilai NaN.

pi function

pi()

Mengembalikan nilai π hingga 15 tempat desimal.

pow function

pow(x, y)

Memangkatkan x dengan pangkat y.

Fungsi ini merupakan alias dari fungsi power.

power function

power(x, y)

Memangkatkan x dengan pangkat y.

radians function

radians(x)

Mengonversi sudut dari derajat ke radian.

rand function

rand()

Mengembalikan bilangan acak.

random function

random()

Mengembalikan bilangan acak dalam rentang [0, 1).

random(x)

Mengembalikan bilangan acak dalam rentang [0, x).

round function

round(x)

Membulatkan x ke bilangan bulat terdekat.

round(x, n)

Membulatkan x ke n tempat desimal.

sign function

sign(x)

Mengembalikan tanda dari x sebagai 1, 0, atau -1.

×

sin function

sin(x)

Mengembalikan sinus dari x.

sqrt function

sqrt(x)

Mengembalikan akar kuadrat dari x.

tan function

tan(x)

Mengembalikan tangen dari x.

tanh function

tanh(x)

Mengembalikan tangen hiperbolik dari x.

to_base function

to_base(x, y)

Mengonversi angka x ke representasi string basis-y-nya.

×

truncate function

truncate(x)

Menghapus bagian pecahan dari x.

width_bucket function

width_bucket(x, bound1, bound2, numBuckets)

Mengembalikan nomor bucket dari x dalam rentang yang dibagi menjadi bucket dengan lebar sama.

×

width_bucket(x, bins)

Menggunakan array untuk menentukan rentang bucket dan mengembalikan bucket tempat x berada.

×

Abs function

Fungsi abs menghitung nilai absolut dari x.

Syntax

abs(x)

Parameters

Parameter

Description

x

Parameter dapat berupa smallint, integer, real, tinyint, bigint, double, atau decimal.

Return value type

Nilai yang dikembalikan memiliki tipe data yang sama dengan parameter input.

Examples

Hitung nilai absolut dari -25.

  • Query and analysis statement

    * | select abs(-25)
  • Hasil query dan analisis: 25.

acos function

Menghitung arc cosine dari x.

Syntax

acos(x)

Parameters

Parameter

Description

x

Parameter ini harus berupa double dalam rentang [-1, 1].

Jika nilainya di luar rentang ini, fungsi mengembalikan NaN.

Return value type

Nilai double.

Examples

Contoh ini menghitung arc cosine dari pi()/4.

  • Query statement

    * | SELECT acos(pi()/4)
  • Hasil query dan analisis: Query mengembalikan 0.6674572160283838.

Asin function

Menghitung arcsine dari x.

Syntax

asin(x)

Parameters

Parameter

Description

x

Nilai double dalam rentang [-1, 1].

Jika nilainya di luar rentang ini, fungsi mengembalikan NaN.

Return value type

double

Examples

Menghitung arcsine dari π/4.

  • Query and analysis statement

    * | SELECT  asin(pi()/4)
  • Hasil query dan analisis: 0.9033391101131845.

Atan function

Menghitung arc tangent dari x.

Syntax

atan(x)

Parameters

Parameter

Description

x

Nilainya harus berupa double.

Return value type

Mengembalikan nilai double.

Examples

Contoh ini menghitung arc tangent dari pi()/4.

  • Query statement

    * | SELECT atan(pi()/4)
  • Hasil query: 0.6657737500283538

atan2 function

Menghitung arctangent dari x dibagi dengan y.

Syntax

atan2(x, y)

Parameters

Parameter

Description

x

Nilai double.

y

Nilai double.

Return value type

Mengembalikan nilai double.

Examples

Hitung arctangent dari π dibagi 6.

  • Query statement

    * | SELECT atan2(pi(),6)
  • Hasil query: Nilai kembali adalah 0.48234790710102495.

Cbrt function

Menghitung akar pangkat tiga dari x.

Syntax

cbrt(x)

Parameters

Parameter

Description

x

Nilai double.

Return value type

Mengembalikan nilai double.

Examples

Hitung akar pangkat tiga dari 100.

  • Query statement

    * | select cbrt(100)
  • Hasil query: 4.641588833612779.

Ceil function

Fungsi ceil membulatkan x ke atas ke bilangan bulat terdekat. Fungsi ceil merupakan alias dari fungsi ceiling.

Syntax

ceil(x)

Parameters

Parameter

Description

x

Nilai dengan tipe tinyint, smallint, integer, real, bigint, double, atau decimal.

  • Jika x adalah bilangan positif, fungsi membulatkan nilainya menjauh dari 0.

  • Jika x adalah bilangan negatif, fungsi membulatkan nilainya mendekati 0.

Return value type

Nilai kembali memiliki tipe data yang sama dengan parameternya.

Examples

Bulatkan nilai field request_time ke atas ke bilangan bulat terdekat.

  • Sample field

    request_time:9.3
  • Query statement

    * | SELECT ceil(request_time) AS request_time
  • Hasil query: Nilai kolom request_time adalah 10.0.

Ceiling function

Fungsi ceiling membulatkan x ke atas ke bilangan bulat terdekat.

Syntax

ceiling(x)

Parameters

Parameter

Description

x

Nilai dengan tipe tinyint, smallint, integer, real, bigint, double, atau decimal.

  • Jika x adalah bilangan positif, fungsi membulatkan nilainya menjauh dari 0.

  • Jika x adalah bilangan negatif, fungsi membulatkan nilainya mendekati 0.

Return value type

Tipe data yang sama dengan parameternya.

Examples

Membulatkan nilai field request_time ke atas ke bilangan bulat terdekat.

  • Sample field

    request_time:9.3
  • Query and analysis statement

    * | SELECT ceiling(request_time) AS request_time
  • Hasil query dan analisis: Kolom request_time adalah 10.0.

Cos function

Menghitung cosinus dari x.

Syntax

cos(x)

Parameters

Parameter

Description

x

Parameter harus berupa double.

Return value type

Mengembalikan double.

Examples

Menghitung cosinus dari 30 derajat.

  • Query and analysis statement

    * | SELECT cos(pi()/6)
  • Hasil query dan analisis: 0.8660254037844387.

Cosh function

Fungsi cosh menghitung cosinus hiperbolik dari x.

Syntax

cosh(x)

Parameters

Parameter

Description

x

Nilainya adalah double.

Return value type

Mengembalikan nilai double.

Examples

Hitung cosinus hiperbolik dari sudut 30°.

  • Query and analysis statement

    * | SELECT cosh(pi()/6)
  • Hasil query dan analisis: 1.1402383210764287.

Cosine_similarity

Fungsi ini menghitung kemiripan cosinus antara x dan y.

Syntax

cosine_similarity(x, y)

Parameters

Parameter

Description

x

Parameter berupa map(varchar, double).

y

Parameter berupa map(varchar, double).

Return value type

Mengembalikan nilai double.

Examples

Menghitung kemiripan cosinus antara dua vektor.

  • Query

    * | SELECT cosine_similarity(MAP(ARRAY['a'], ARRAY[1.0]), MAP(ARRAY['a'], ARRAY[2.0]))
  • Query mengembalikan 1.0.

Degrees function

Fungsi degrees mengonversi sudut dari radian ke derajat.

Syntax

degrees(x)

Parameters

Parameter

Description

x

Sudut dalam radian, ditentukan sebagai nilai double.

Return value type

Sudut ekuivalen dalam derajat, dikembalikan sebagai nilai double.

Examples

Konversi π radian ke derajat.

  • Query statement

    * | SELECT degrees(pi())
  • Hasil query dan analisis: Hasilnya adalah 180.0.

e function

Fungsi e mengembalikan nilai e, basis logaritma natural.

Syntax

e()

Return value type

Nilai double.

Examples

Mengembalikan nilai e.

  • Query

    * | SELECT e()
  • Hasil query dan analisis: Nilai kembali adalah 2.718281828459045.

exp function

Menghitung e dipangkatkan x.

Syntax

exp(x)

Parameters

Parameter

Description

x

Nilai double.

Return value type

Nilai double.

Examples

Menghitung e dipangkatkan 3.

  • Query and analysis statement

    * | SELECT exp(3)
  • Hasil query dan analisis: Nilai kembali adalah 20.085536923187669.

Floor function

Fungsi floor membulatkan x ke bawah ke bilangan bulat terdekat.

Syntax

floor(x)

Parameters

Parameter

Description

x

Nilainya harus berupa tinyint, smallint, integer, real, bigint, double, atau decimal.

  • Jika x positif, fungsi membulatkannya mendekati 0.

  • Jika x negatif, fungsi membulatkannya menjauh dari 0.

Return value type

Mengembalikan nilai double.

Examples

Membulatkan nilai field request_time ke bawah ke bilangan bulat terdekat.

  • Sample field

    request_time:10.3
  • Query statement

    * | SELECT floor(request_time) AS request_time
  • Hasil query dan analisis: Nilai kolom request_time adalah 10.0.

from_base function

Fungsi from_base mengonversi string x dari basis y menjadi angka.

Syntax

from_base(x, y)

Parameters

Parameter

Description

x

String varchar.

y

Basis untuk angka tersebut. Nilainya harus berupa bigint dari 2 hingga 36.

Return value type

Mengembalikan bigint.

Examples

Mengonversi string biner '1101' ke ekuivalen desimalnya.

  • Query statement

    * | SELECT  from_base('1101',2)
  • Hasil: Nilai kembali adalah 13.

Ln function

Fungsi ln menghitung logaritma natural dari x.

Syntax

ln(x)

Parameters

Parameter

Description

x

Nilai double lebih besar dari 0.

Return value type

Nilai double.

Examples

Contoh ini menghitung logaritma natural dari 2.

  • Query and analysis statement

    * | SELECT ln(2)
  • Hasil query dan analisis: Mengembalikan 0.6931471805599453.

Infinity function

Fungsi infinity mengembalikan tak hingga positif.

Syntax

infinity()

Return value type

double

Examples

Mengembalikan tak hingga positif.

  • Query and analysis statement

    * | SELECT infinity()
  • Hasil query dan analisis: Infinity.

Is_nan function

Fungsi is_nan mengembalikan true jika x adalah NaN (Not a Number), dan false jika tidak.

Syntax

is_nan(x)

Parameters

Parameter

Description

x

Nilai double.

Return value type

Mengembalikan nilai boolean.

Examples

Periksa apakah nilai field status adalah NaN.

  • Query and analysis statement

    * | SELECT is_nan(status)
  • Hasil query dan analisis: Pernyataan mengembalikan false.

log2 function

Fungsi log2 menghitung logaritma basis-2 dari x.

Syntax

log2(x)

Parameters

Parameter

Description

x

Nilai double.

Return value type

Mengembalikan nilai double.

Examples

Hitung logaritma basis-2 dari 100.

  • Query and analysis statement

    * | SELECT log2(100)
  • Hasil query dan analisis: Nilai kembali adalah 6.643856189774725.

log10 function

Fungsi log10 menghitung logaritma basis-10 dari x.

Syntax

log10(x)

Parameters

Parameter

Description

x

Nilai double.

Return value type

Mengembalikan nilai double.

Examples

Contoh ini menghitung logaritma basis-10 dari 100.

  • Query and analysis statement

    * | SELECT log10(100)
  • Hasil query dan analisis: 2.0.

Log function

Fungsi log menghitung logaritma basis-y dari x.

Syntax

log(x, y)

Parameters

Parameter

Description

x

Nilainya harus berupa double.

y

Nilainya harus berupa double.

Return value type

Mengembalikan nilai double.

Examples

Menghitung logaritma basis-5 dari 100.

  • Query

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

mod function

Fungsi mod mengembalikan sisa ketika x dibagi dengan y.

Syntax

mod(x, y)

Parameters

Parameter

Description

x

Nilai dengan tipe tinyint, smallint, integer, real, bigint, double, atau decimal.

y

Nilai dengan tipe tinyint, smallint, integer, real, bigint, double, atau decimal.

Return value type

Nilai kembali memiliki tipe data yang sama dengan parameter input.

Examples

Hitung sisa dari 100 dibagi 30.

  • Query statement

    * | SELECT mod(100,30)
  • Hasil query dan analisis: Mengembalikan 10.

Nan function

Fungsi nan mengembalikan NaN (Not a Number).

Syntax

nan()

Return value type

Double.

Examples

Mengembalikan nilai NaN.

  • Query statement

    * | SELECT nan()
  • Hasil query: Nilai kembali adalah NaN.

Pi function

Fungsi ini mengembalikan nilai π, akurat hingga 15 tempat desimal.

Syntax

pi()

Return value type

Mengembalikan nilai double.

Examples

Contoh ini mengembalikan nilai π.

  • Query and analysis statement

    * | SELECT pi()
  • Hasil query dan analisis: 3.141592653589793.

Pow function

Fungsi pow mengembalikan x dipangkatkan y. Fungsi ini merupakan alias dari fungsi power.

Syntax

pow(x, y)

Parameters

Parameter

Description

x

Nilai double.

y

Nilai double.

Return value type

Mengembalikan nilai double.

Examples

Pangkatkan 2 dengan pangkat 5.

  • Query statement

    * | SELECT pow(2,5)
  • Hasil query dan analisis: 32.0.

Power function

Mengembalikan x dipangkatkan y.

Syntax

power(x, y)

Parameters

Parameter

Description

x

Nilai double.

y

Nilai double.

Return value type

Nilai double.

Examples

Hitung 2 dipangkatkan 5.

  • Query and analysis statement

    * | SELECT power(2,5)
  • Hasil query dan analisis: Mengembalikan 32.0.

Radians function

Mengonversi sudut dari derajat ke radian.

Syntax

radians(x)

Parameters

Parameter

Description

x

Harus berupa double.

Return value type

Mengembalikan double.

Examples

Konversi 180 derajat ke radian.

  • Query statement

    * | SELECT radians(180)
  • Hasil query: 3.141592653589793

Rand function

Fungsi rand mengembalikan bilangan acak.

Syntax

rand()

Return value type

double

Examples

Query berikut mengembalikan bilangan acak.

  • Query statement

    * | select rand()
  • Hasil query dan analisis: Mengembalikan nilai acak, seperti 0.8742241064002435.

Random function

Fungsi random mengembalikan bilangan acak dalam rentang [0,x).

Syntax

  • Mengembalikan nilai presisi ganda acak dalam rentang [0, 1.0).

    random()
  • Mengembalikan bilangan bulat acak dalam rentang [0, x).

    random(x)

Parameters

Parameter

Description

x

Nilai tinyint, smallint, integer, atau bigint.

Return value type

Mengembalikan nilai dengan tipe data yang sama dengan parameter input.

Examples

Hasilkan bilangan acak dalam rentang [0, 100).

  • Query statement

    * | select random(100)
  • Hasil query: Mengembalikan bilangan bulat acak, misalnya 44.

Round function

Fungsi round membulatkan x. Jika Anda menentukan n, fungsi membulatkan nilainya ke n tempat desimal. Jika Anda menghilangkan n, fungsi membulatkan x ke bilangan bulat terdekat.

Syntax

  • Membulatkan x ke bilangan bulat terdekat.

    round(x)
  • Membulatkan x ke n tempat desimal.

    round(x, n)

Parameters

Parameter

Description

x

Nilai tinyint, smallint, integer, atau bigint.

n

Jumlah tempat desimal yang dipertahankan.

Return value type

Nilai kembali memiliki tipe data yang sama dengan parameter x.

Examples

Contoh ini membandingkan jumlah tampilan halaman (PVs) hari ini dengan kemarin dan menyatakan perubahan sebagai persentase.

  • Query statement

    * | 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))
  • Query mengembalikan today sebagai 1564075.0 dan growth sebagai -22.11.

sign function

Fungsi sign mengembalikan tanda dari x sebagai 1, 0, atau -1.

Syntax

sign(x)

Parameters

Parameter

Description

x

Ekspresi numerik yang dievaluasi. Tipe datanya dapat berupa integer, smallint, tinyint, real, double, bigint, atau decimal(p,s).

  • Jika x adalah bilangan positif, fungsi mengembalikan 1.

  • Jika x adalah 0, fungsi mengembalikan 0.

  • Jika x adalah bilangan negatif, fungsi mengembalikan -1.

Return value type

Mengembalikan tipe data yang sama dengan parameter input.

Examples

Hitung tanda dari angka 10.

  • Query statement

    * | SELECT sign(10)
  • Hasil query: Nilai yang dikembalikan adalah 1.

Sin function

Fungsi ini menghitung sinus dari x.

Syntax

sin(x)

Parameters

Parameter

Description

x

Nilai double.

Return value type

Mengembalikan nilai double.

Examples

Contoh ini menghitung sinus dari 90 derajat.

  • Query and analysis statement

    * | select sin(pi()/2)
  • Hasil query dan analisis: Mengembalikan 1.0.

Sqrt function

Menghitung akar kuadrat dari x.

Syntax

sqrt(x)

Parameters

Parameter

Description

x

Nilai double.

Return value type

Mengembalikan nilai double.

Examples

Hitung akar kuadrat dari 100.

  • Query and analysis statement

    * | select sqrt(100)
  • Hasil query dan analisis: Hasilnya adalah 10.0.

Tan function

Fungsi tan menghitung tangen dari x.

Syntax

tan(x)

Parameters

Parameter

Description

x

Nilai presisi ganda.

Return value type

Nilai presisi ganda.

Examples

Hitung tangen dari 30 derajat.

  • Query statement

    * | SELECT tan(pi()/6)
  • Hasil query: 0.5773502691896257.

Tanh function

Fungsi tanh menghitung tangen hiperbolik dari x.

Syntax

tanh(x)

Parameters

Parameter

Description

x

Harus berupa nilai double.

Return value type

Mengembalikan nilai double.

Examples

Contoh ini menghitung tangen hiperbolik dari π/6 radian (30 derajat).

  • Query

    * | SELECT tanh(pi()/6)
  • Hasil query: Query mengembalikan 0.4804727781564516.

To_base function

Fungsi ini mengonversi bigint x ke representasi string-nya dalam basis y.

Syntax

to_base(x, y)

Parameters

Parameter

Description

x

Bigint yang akan dikonversi.

y

Basis untuk string output. Nilainya harus berupa bigint dari 2 hingga 36, inklusif.

Return value type

Mengembalikan nilai varchar.

Examples

Konversi 180 ke string biner.

  • Query statement

    * | SELECT  to_base(180, 2)
  • Hasil query: 10110100

Truncate function

Fungsi truncate menghapus bagian pecahan dari x.

Syntax

truncate(x)

Parameters

Parameter

Description

x

Nilai double.

Return value type

Mengembalikan nilai double.

Examples

Hapus bagian pecahan dari 11.11.

  • Query statement

    * | SELECT  truncate(11.11)
  • Hasil query: 11.0.

width_bucket function

Fungsi width_bucket mengembalikan nomor bucket untuk nilai x.

Syntax

  • Membagi rentang numerik menjadi sejumlah bucket dengan lebar sama dan mengembalikan nomor bucket untuk x.

    width_bucket(x, bound1, bound2, numBuckets)
  • Mengembalikan nomor bucket untuk x berdasarkan array batas bucket yang ditentukan.

    width_bucket(x, bins)

Parameters

Parameter

Description

x

Nilai yang akan dimasukkan ke bucket. Nilai ini harus bertipe double.

bound1

Menentukan batas bawah rentang numerik.

bound2

Menentukan batas atas rentang numerik.

numBuckets

Jumlah bucket. Nilainya harus berupa integer lebih besar dari 0.

bins

Gunakan bins, array bertipe double, untuk menentukan rentang bucket.

Return value type

Mengembalikan nilai bertipe bigint.

Catatan
  • Jika x berada dalam rentang yang ditentukan, bucket tempat x berada akan dikembalikan.

  • Jika x berada di bawah batas bawah, fungsi mengembalikan 0.

  • Jika x lebih besar dari atau sama dengan batas atas, fungsi mengembalikan numBuckets+1.

Examples

  • Contoh 1: Bagi rentang numerik [10, 80) menjadi 7 bucket dengan lebar sama dan kembalikan nomor bucket untuk setiap nilai dalam field request_time.

    • Query statement

      * | SELECT request_time, width_bucket(request_time, 10, 80,7) AS numBuckets
    • Hasil query dan analisis: Query mengembalikan kolom request_time dan numBuckets. Kolom-kolom ini menunjukkan nomor bucket yang sesuai untuk setiap waktu permintaan. Misalnya, jika request_time adalah 26.0, numBuckets adalah 2, dan jika request_time adalah 49.0, numBuckets adalah 4.

  • Contoh 2: Gunakan array untuk menentukan batas bucket dan kembalikan nomor bucket untuk setiap nilai dalam field request_time.

    • Query statement

      * | SELECT request_time, width_bucket(request_time, array[10,20,30,40,50,60,70,80]) AS numBuckets
    • Hasil query dan analisis: Query mengembalikan kolom request_time dan numBuckets. Kolom-kolom ini menunjukkan nomor bucket yang diberikan untuk setiap waktu permintaan berdasarkan array batas kustom. Misalnya, jika request_time adalah 26.0, numBuckets adalah 2, dan jika request_time adalah 54.0, numBuckets adalah 5.