All Products
Search
Document Center

Hologres:Fungsi matematika

Last Updated:Aug 04, 2026

Hologres mendukung fungsi matematika berikut. Untuk fungsi yang tidak tercantum di sini, lihat Mathematical Functions and Operators dalam dokumentasi PostgreSQL 11.

Catatan

Contoh keluaran dalam topik ini menggunakan presisi tampilan default klien psql (extra_float_digits = 0). Jumlah digit yang ditampilkan untuk hasil floating-point bervariasi tergantung pengaturan extra_float_digits pada klien; nilai dasarnya tetap sama.

Fungsi matematika umum

Function Description
ABS Mengembalikan nilai absolut suatu bilangan.
CBRT Mengembalikan akar pangkat tiga suatu bilangan.
CEIL Membulatkan bilangan ke atas ke bilangan bulat terdekat. Alias dari CEILING.
CEILING Membulatkan bilangan ke atas ke bilangan bulat terdekat. Alias dari CEIL.
DEGREES Mengonversi radian ke derajat.
EXP Mengembalikan e dipangkatkan dengan suatu bilangan (e^num).
FLOOR Membulatkan bilangan ke bawah ke bilangan bulat terdekat.
LN Mengembalikan logaritma natural suatu bilangan.
LOG Mengembalikan logaritma basis-10 suatu bilangan.
MOD Mengembalikan sisa bagi setelah membagi satu bilangan dengan bilangan lain.
PI Mengembalikan nilai π (3.14159265358979).
POWER Mengembalikan a dipangkatkan dengan b.
RADIANS Mengonversi derajat ke radian.
RANDOM Mengembalikan bilangan acak dalam [0.0, 1.0).
ROUND Membulatkan bilangan ke bilangan bulat terdekat atau ke jumlah tempat desimal tertentu.
SIGN Mengembalikan tanda suatu bilangan: 1, -1, atau 0.
SQRT Mengembalikan akar kuadrat suatu bilangan.
TRUNC Memotong bilangan menjadi bilangan bulat atau ke jumlah tempat desimal tertentu.
WIDTH_BUCKET Menetapkan suatu nilai ke salah satu bucket berlebar sama dan mengembalikan nomor bucket tersebut.

Fungsi trigonometri

Function Description
ACOS Mengembalikan arccosinus suatu bilangan.
ASIN Mengembalikan arcsinus suatu bilangan.
ATAN Mengembalikan arctangen suatu bilangan.
ATAN2 Mengembalikan arctangen dari y/x.
COS Mengembalikan cosinus suatu bilangan.
COT Mengembalikan cotangen suatu bilangan.
SIN Mengembalikan sinus suatu bilangan.
TAN Mengembalikan tangen suatu bilangan.

ABS

Mengembalikan nilai absolut suatu bilangan.

Syntax

ABS(num)

Parameters

Parameter Required Type Description
num Yes INT, BIGINT, REAL, DOUBLE PRECISION, NUMERIC, atau DECIMAL Bilangan input.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT ABS(-17.4);
 abs
-----
 17.4

CBRT

Mengembalikan akar pangkat tiga suatu bilangan.

Syntax

CBRT(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Bilangan input.

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT CBRT(9);
      cbrt
-----------------
 2.0800838230519

CEIL

Membulatkan bilangan ke atas ke bilangan bulat terdekat. CEIL merupakan alias dari CEILING.

Syntax

CEIL(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC Bilangan input.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT CEIL(9.2);
 ceil
------
   10

See also

CEILING, FLOOR, ROUND, TRUNC

CEILING

Membulatkan bilangan ke atas ke bilangan bulat terdekat. CEILING merupakan alias dari CEIL.

Syntax

CEILING(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC Bilangan input.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT CEILING(9.2);
 ceiling
---------
      10

See also

CEIL, FLOOR, ROUND, TRUNC

DEGREES

Mengonversi nilai dalam radian ke derajat.

Syntax

DEGREES(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Nilai input dalam radian.

Return value

Mengembalikan nilai DOUBLE PRECISION yang merepresentasikan sudut ekuivalen dalam derajat.

Example

SELECT DEGREES(3.2);
      degrees
--------------
 183.34649444186343

See also

RADIANS

EXP

Mengembalikan e dipangkatkan dengan num (e^num).

Syntax

EXP(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC Eksponen.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT EXP(1);
             exp
----------------
 2.718281828459045

FLOOR

Membulatkan bilangan ke bawah ke bilangan bulat terdekat.

Syntax

FLOOR(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC Bilangan input.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT FLOOR(3.8);
 floor
------
     3

See also

CEIL, CEILING, ROUND, TRUNC

LN

Mengembalikan logaritma natural suatu bilangan.

Syntax

LN(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC Bilangan input.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT LN(3.8);
            ln
----------------
 1.3350010667323401

LOG

Mengembalikan logaritma basis-10 suatu bilangan.

Syntax

LOG(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC Bilangan input.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT LOG(100);
 log
-----
   2

MOD

Mengembalikan sisa bagi setelah membagi num dengan x.

Syntax

MOD(num, x)

Parameters

Parameter Required Type Description
num Yes NUMERIC Dividen.
x Yes NUMERIC Pembagi.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT MOD(9, 4);
 mod
-----
   1

PI

Mengembalikan nilai π.

Syntax

PI()

Return value

Mengembalikan nilai DOUBLE PRECISION 3.14159265358979.

Example

SELECT PI();
        pi
------------------
 3.14159265358979

POWER

Mengembalikan a dipangkatkan dengan b.

Syntax

POWER(a, b)

Parameters

Parameter Required Type Description
a Yes DOUBLE PRECISION Basis.
b Yes DOUBLE PRECISION Eksponen.

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT POWER(9, 3);
 power
-------
   729

RADIANS

Mengonversi nilai dalam derajat ke radian.

Syntax

RADIANS(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Nilai input dalam derajat.

Return value

Mengembalikan nilai DOUBLE PRECISION yang merepresentasikan sudut ekuivalen dalam radian.

Example

SELECT RADIANS(45);
       radians
-------------------
 0.785398163397448

See also

DEGREES

RANDOM

Mengembalikan nilai DOUBLE PRECISION acak dalam rentang [0.0, 1.0).

Syntax

RANDOM()

Return value

Mengembalikan nilai DOUBLE PRECISION. Nilai valid: [0.0, 1.0).

Example

SELECT RANDOM();
      random
-------------------
 0.377819478977472

ROUND

Membulatkan bilangan ke bilangan bulat terdekat atau ke jumlah tempat desimal tertentu.

Syntax

-- Bulatkan ke bilangan bulat terdekat
ROUND(num)

-- Bulatkan ke s tempat desimal
ROUND(num, s)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC (bentuk satu argumen); hanya NUMERIC (bentuk dua argumen) Bilangan input.
s No INT Jumlah tempat desimal yang akan dibulatkan.

Return value

Mengembalikan nilai dengan tipe yang sama seperti num.

Example

SELECT ROUND(42.4);
 round
-------
    42

See also

CEIL, CEILING, FLOOR, TRUNC

SIGN

Mengembalikan tanda suatu bilangan: 1 jika positif, -1 jika negatif, atau 0 jika nol.

Syntax

SIGN(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC Bilangan input.

Return value

Mengembalikan 1, -1, atau 0.

Example

SELECT SIGN(-8.4);
 sign
------
   -1

SQRT

Mengembalikan akar kuadrat suatu bilangan.

Syntax

SQRT(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION atau NUMERIC Bilangan input.

Return value

Mengembalikan nilai dengan tipe yang sama seperti input.

Example

SELECT SQRT(2);
      sqrt
-----------------
 1.4142135623731

TRUNC

Memotong bilangan menuju nol dengan menghilangkan digit pecahan.

Syntax

-- Potong menjadi bilangan bulat
TRUNC(num)

-- Potong ke s tempat desimal
TRUNC(num, s)

Parameters

Parameter Required Type Description
num Yes NUMERIC Bilangan input.
s No INT Jumlah tempat desimal yang dipertahankan.

Return value

Mengembalikan nilai NUMERIC.

Example

SELECT TRUNC(2.456);
 trunc
-------
     2
SELECT TRUNC(2.4564, 2);
 trunc
-------
  2.45

See also

CEIL, CEILING, FLOOR, ROUND

WIDTH_BUCKET

Membagi rentang menjadi bucket berlebar sama dan mengembalikan nomor bucket tempat suatu nilai berada.

Syntax

WIDTH_BUCKET(value, start, end, num_buckets)

Parameters

Parameter Required Type Description
value Yes DOUBLE PRECISION atau NUMERIC Nilai yang akan ditempatkan ke bucket.
start Yes DOUBLE PRECISION atau NUMERIC Batas bawah rentang.
end Yes DOUBLE PRECISION atau NUMERIC Batas atas rentang.
num_buckets Yes INT Jumlah bucket berlebar sama yang akan dibuat.

Return value

Mengembalikan nilai INT.

Example

Contoh berikut membagi rentang 0–100 menjadi 5 bucket sama besar (0–20, 20–40, 40–60, 60–80, 80–100) dan mengembalikan nomor bucket untuk nilai 45.

SELECT WIDTH_BUCKET(45, 0, 100, 5);
 width_bucket
--------------
            3

Nilai 45 berada di bucket 3 (rentang 40–60).

ACOS

Mengembalikan arccosinus dari num.

Syntax

ACOS(num)

Parameters

Parameter Required Type Description
num Yes NUMERIC Nilai input. Nilai valid: [-1, 1].

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT ACOS(-1);
       acos
------------------
 3.14159265358979

See also

ASIN, ATAN, ATAN2, COS

ASIN

Mengembalikan arcsinus dari num.

Syntax

ASIN(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Nilai input. Nilai valid: [-1, 1].

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT ASIN(-1);
       asin
------------------
 -1.5707963267949

See also

ACOS, ATAN, ATAN2, SIN

ATAN

Mengembalikan arctangen dari num.

Syntax

ATAN(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Nilai input.

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT ATAN(2);
       atan
------------------
 1.10714871779409

See also

ACOS, ASIN, ATAN2, TAN

ATAN2

Mengembalikan arctangen dari y/x, menggunakan tanda kedua argumen untuk menentukan kuadran yang tepat.

Syntax

ATAN2(y, x)

Parameters

Parameter Required Type Description
y Yes DOUBLE PRECISION Koordinat y.
x Yes DOUBLE PRECISION Koordinat x.

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT ATAN2(4, 2);
      atan2
------------------
 1.10714871779409

See also

ATAN

COS

Mengembalikan cosinus dari num (input dalam radian).

Syntax

COS(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Sudut input dalam radian.

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT COS(2);
        cos
--------------------
 -0.416146836547142

See also

ACOS, SIN, TAN

COT

Mengembalikan cotangen dari num (input dalam radian).

Syntax

COT(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Sudut input dalam radian.

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT COT(2);
        cot
--------------------
 -0.457657554360286

See also

TAN

SIN

Mengembalikan sinus dari num (input dalam radian).

Syntax

SIN(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Sudut input dalam radian.

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT SIN(2);
        sin
-------------------
 0.909297426825682

See also

ASIN, COS, TAN

TAN

Mengembalikan tangen dari num (input dalam radian).

Syntax

TAN(num)

Parameters

Parameter Required Type Description
num Yes DOUBLE PRECISION Sudut input dalam radian.

Return value

Mengembalikan nilai DOUBLE PRECISION.

Example

SELECT TAN(2);
        tan
-------------------
 -2.18503986326152

See also

ATAN, ATAN2, COT, SIN, COS