全部產品
Search
文件中心

Hologres:數學函數

更新時間:Jun 30, 2024

本文為您介紹Hologres已支援的數學函數及使用用例。

說明

關於相容PostgreSQL的字串函數的詳細使用方法,請參見數學函數

通用數學函數

函數名

描述

用例

結果

abs(bigint)

返回BIGINT類型運算式的絕對值。

abs(-17)

17

abs(int)

返回INT類型運算式的絕對值。

abs(-17)

17

abs(float8)

返回FLOAT8類型運算式的絕對值。

abs(-17.4)

17.4

abs(float4)

返回FLOAT4類型運算式的絕對值。

abs(-17.4)

17.4

abs(numeric)

返回NUMERIC類型運算式的絕對值。

abs(-17.4)

17.4

cbrt(dp)

返回DP類型運算式的立方根。

cbrt(27.0)

3.0000000000000004

ceil(dp )

對DP類型的運算式向上取整。

ceil(-42.8)

-42.0

ceil(numeric)

對NUMERIC類型的運算式向上取整。

ceil(-42.8)

-42.0

ceiling(dp )

對DP類型的運算式向上取整。

ceil(-42.8)

-42.0

ceiling(numeric)

對NUMERIC類型的運算式向上取整。

ceil(-42.8)

-42.0

degrees(float8)

將FLOAT8類型運算式的弧度轉換為角度。

degrees(0.5)

28.64788975654116

exp(float8)

返回FLOAT8類型運算式的指數。

exp(1.0)

2.718281828459045

exp(numeric)

返回NUMERIC類型運算式的指數。

exp(1.0)

2.718281828459045

floor(float8)

對FLOAT8類型運算式向下取整。

floor(-42.8)

-43.0

floor(numeric)

對NUMERIC類型運算式向下取整。

floor(-42.8)

-43.0

ln(float8)

返回FLOAT8類型運算式的自然對數。

ln(2.0)

0.6931471805599453

ln(numeric)

返回NUMERIC類型運算式的自然對數。

ln(2.0)

0.6931471805599453

log(float8)

返回FLOAT8類型運算式的常用對數。

log(100.0)

2.0

log(numeric)

返回NUMERIC類型運算式的常用對數。

log(100.0)

2.0

log(b numeric, x numeric)

返回NUMERIC類型運算式的對數。

log(2.0, 64.0)

6.0

mod(bigint, x)

求BIGINT類型運算式除以x的餘數。

mod(9,4)

1

mod(int, x)

求INT類型運算式除以x的餘數。

mod(9,4)

1

pi()

返回π常量。

pi()

3.141592653589793

power(a float8, b float8)

求a的b次冪,a和b使用FLOAT8類型的運算式。

power(9.0, 3.0)

729.0

power(a numeric, b numeric)

求a的b次冪,a和b使用NUMERIC類型的運算式。

power(9.0, 3.0)

729.0

radians(float8)

將FLOAT8類型運算式的角度轉換為弧度。

radians(45.0)

0.7853981633974483

random()

擷取一個隨機數,傳回值範圍為[0.0,1.0)。

random()

0.3977345246821642

round(float8)

返回FLOAT8類型運算式四捨五入後的整數值。

round(42.4)

42.0

round(numeric)

返回NUMERIC類型運算式四捨五入後的整數值。

round(42.4)

42.0

round(v numeric, s int)

保留s位小數,計算的類型必須是numeric類型。

round((100/400::numeric),4);

0.2500

sign(float8)

返回FLOAT8類型運算式的符號。參數值大於0返回1,小於0返回-1 ,等於0返回0

sign(-8.4)

-1

sign(numeric)

返回NUMERIC類型運算式的符號。參數值大於0返回1,小於0返回 -1 ,等於0返回0

sign(-8.4)

-1

sqrt(float8)

返回FLOAT8類型運算式的平方根。

sqrt(2.0)

1.414213562373095

sqrt(numeric)

返回NUMERIC類型運算式的平方根。

sqrt(2.0)

1.414213562373095

trunc(float8)

去掉FLOAT8類型運算式的小數位。

trunc(42.8)

42.0

trunc(numeric)

去掉NUMERIC類型運算式的小數位。

trunc(42.8)

42.0

trunc(v numeric, s int)

截斷NUMERIC類型運算式的小數位置到s位。

trunc(42.4382, 2)

42.43

width_bucket(operand numeric, b1 numeric, ...)

返回OPERAND在BUCKET中的位置。

width_bucket(5.35, 0.024, 10.06, 5)

3

三角函數

函數名

描述

用例

結果

acos(bigint)

返回BIGINT類型運算式的反餘弦值。

acos(1)

0.0

acos(int)

返回INT類型運算式的反餘弦值。

acos(1)

0.0

acos(float8)

返回FLOAT8類型運算式的反餘弦值。

acos(0.9)

0.45102681179626236

acos(float4)

返回FLOAT4類型運算式的反餘弦值。

acos(0.9)

0.45102681179626236

acos(numeric)

返回NUMERIC類型運算式的反餘弦值。

acos(0.9)

0.45102681179626236

asin(bigint)

返回BIGINT類型運算式的反正弦值。

asin(1)

1.5707963267948966

asin(int)

返回INT類型運算式的反正弦值。

asin(1)

1.5707963267948966

asin(float8)

返回FLOAT8類型運算式的反正弦值。

asin(1.0)

1.5707963267948966

asin(float4)

返回FLOAT4類型運算式的反正弦值。

asin(1.0)

1.5707963267948966

asin(numeric)

返回NUMERIC類型運算式的反正弦值。

asin(1.0)

1.5707963267948966

atan(bigint)

返回BIGINT類型運算式的反正切值。

atan(2)

1.1071487177940904

atan(int)

返回INT類型運算式的反正切值。

atan(2)

1.1071487177940904

atan(float8)

返回FLOAT8類型運算式的反正切值。

atan(2.0)

1.1071487177940904

atan(float4)

返回FLOAT4類型運算式的反正切值。

atan(2.0)

1.1071487177940904

atan(numeric)

返回NUMERIC類型運算式的反正切值。

atan(2.0)

1.1071487177940904

atan2(bigint y, bigint x)

取y/x的反正切值。y和x的資料類運算式為BIGINT。

atan2(2, 1)

1.1071487177940904

atan2(int y, int x)

取y/x的反正切值。y和x的資料類運算式為INT。

atan2(2, 1)

1.1071487177940904

atan2(float8 y, float8 x)

取y/x的反正切值。y和x的資料類運算式為FLOAT8。

atan2(2.0, 1.0)

1.1071487177940904

atan2(float4 y, float4 x)

取y/x的反正切值。y和x的資料類運算式為FLOAT4。

atan2(2.0, 1.0)

1.1071487177940904

atan2(numeric y, numeric x)

取y/x的反正切值。y和x的資料類運算式為NUMERIC。

atan2(2.0, 1.0)

1.1071487177940904

cos(bigint)

返回BIGINT類型運算式的餘弦值。

cos(2)

-0.4161468365471424

cos(int)

返回INT類型運算式的餘弦值。

cos(2)

-0.4161468365471424

cos(float8)

返回FLOAT8類型運算式的餘弦值。

cos(2.0)

-0.4161468365471424

cos(float4)

返回FLOAT4類型運算式的餘弦值。

cos(2.0)

-0.4161468365471424

cos(numeric)

返回NUMERIC類型運算式的餘弦值。

cos(2.0)

-0.4161468365471424

cot(bigint)

返回BIGINT類型運算式的餘切值。

cot(2)

-0.45765755436028577

cot(int)

返回INT類型運算式的餘切值。

cot(2)

-0.45765755436028577

cot(float8)

返回FLOAT8類型運算式的餘切值。

cot(2.0)

-0.45765755436028577

cot(float4)

返回FLOAT4類型運算式的餘切值。

cot(2.0)

-0.45765755436028577

cot(numeric)

返回NUMERIC類型運算式的餘切值。

cot(2.0)

-0.45765755436028577

sin(bigint)

返回BIGINT類型運算式的正弦值。

sin(2)

0.9092974268256817

sin(int)

返回INT類型運算式的正弦值。

sin(2)

0.9092974268256817

sin(float8)

返回FLOAT8類型運算式的正弦值。

sin(2.0)

0.9092974268256817

sin(float4)

返回FLOAT4類型運算式的正弦值。

sin(2.0)

0.909297268256817

sin(numeric)

返回NUMERIC類型運算式的正弦值。

sin(2.0)

0.9092974268256817

tan(bigint)

返回BIGINT類型運算式的正切值。

tan(2)

-2.185039863261519

tan(int)

返回INT類型運算式的正切值。

tan(2)

-2.185039863261519

tan(float8)

返回FLOAT8類型運算式的正切值。

tan(2.0)

-2.185039863261519

tan(float4)

返回FLOAT4類型運算式的正切值。

tan(2.0)

-2.185039863261519

tan(numeric)

返回NUMERIC類型運算式的正切值。

tan(2.0)

-2.185039863261519