SQL分析提供了常見的數學函數供您在開發過程中使用,您可以根據實際需要選擇合適的數學函數,進行資料計算、資料轉換相關操作。本文為您提供SQL分析支援的數學函數的命令格式、參數說明及樣本,指導您使用數學函數完成開發。
SQL分析支援的數學函數如下。
函數 | 功能 |
計算絕對值。 | |
計算反餘弦值。 | |
計算expr1/expr2的反正切值。 | |
計算反正弦值。 | |
計算反正切值。 | |
計算向上取整值。 | |
計算進位轉換值。 | |
計算皮爾遜係數。 | |
計算餘弦值。 | |
計算雙曲餘弦值。 | |
計算餘切值。 | |
將弧度轉換為角度。 | |
返回e的值。 | |
計算指數值。 | |
計算向下取整值。 | |
將數字轉化為指定格式的字串。 | |
計算自然對數。 | |
計算log對數值。 | |
計算以10為底的對數。 | |
計算以2為底的對數。 | |
返回運算式的負值。 | |
返回π的值。 | |
返回運算式的值。 | |
計算冪值。 | |
將角度轉換為弧度。 | |
返回隨機數。 | |
返回四捨五入到指定小數點位置的值。 | |
計算按位左移值。 | |
計算按位右移值。 | |
計算無符號按位右移值。 | |
返回輸入參數的符號。 | |
計算正弦值。 | |
計算雙曲正弦值。 | |
計算平方根。 | |
計算正切值。 | |
計算雙曲正切值。 |
ABS
命令格式
bigint|double|decimal abs(<number>)
命令說明
計算number的絕對值。
參數說明
number:必填。DOUBLE、BIGINT或DECIMAL類型。輸入為STRING時,會隱式轉換為DOUBLE類型後參與運算。
說明當輸入BIGINT類型的值超過BIGINT的最大表示範圍時,會返回DOUBLE類型,但可能會損失精度。
傳回值說明
傳回值類型取決於輸入參數的類型。返回規則如下:
number為DOUBLE、BIGINT或DECIMAL類型時會返回相應的類型。
number為STRING類型時,返回DOUBLE類型。
number為NULL,則返回NULL。
樣本
--返回NULL。
select abs(null);
--返回1。
select abs(-1);
--返回1.2。
select abs(-1.2);
--返回2.0。
select abs("-2");
--返回1.2232083745629837E32。
select abs(122320837456298376592387456923748);
--取tbl1表內id欄位的絕對值。下面是一個完整的ABS函數在SQL中使用的樣本,其他內建函數(除視窗函數和彙總函式外)的使用方式與其類似。
select abs(id) from tbl1;
ACOS
命令格式
double|decimal acos(<number>)
命令說明
計算number的反餘弦函數。
參數說明
number:必填。取值範圍為[-1,1]。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
傳回值類型取決於輸入參數的類型。範圍在0~π之間。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值不在[-1,1]範圍內時,返回NULL。
number值為NULL時,返回NULL。
樣本
--返回0.5155940062460905。
select acos("0.87");
--返回1.5707963267948966。
select acos(0);
--返回NULL。
select acos(null);
ATAN2
命令格式
double atan2(<expr1>, <expr2>)
命令說明
計算expr1/expr2的反正切函數。
參數說明
expr1:必填。DOUBLE類型。輸入為STRING、BIGINT、DECIMAL類型時,會隱式轉換為DOUBLE類型後參與運算。
expr2:必填。DOUBLE類型。輸入為STRING、BIGINT、DECIMAL類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE類型。範圍在
-π/2~π/2
之間。expr1或expr2值為NULL時,返回NULL。樣本
--返回0.0。 select atan2(0, 0);
ASIN
命令格式
double|decimal asin(<number>)
命令說明
計算number的反正弦函數。
參數說明
number:必填。取值範圍為[-1,1]。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
傳回值類型取決於輸入參數的類型。範圍在
-π/2~π/2
之間。返回規則如下:number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值不在[-1,1]範圍內時,返回NULL。
number值為NULL時,返回NULL。
樣本
--返回1.5707963267948966。
select asin(1);
--返回-1.5707963267948966。
select asin(-1);
--返回NULL。
select asin(null);
ATAN
命令格式
double atan(<number>)
命令說明
計算number的反正切函數。
參數說明
number:必填。DOUBLE類型。輸入為STRING、BIGINT、DECIMAL類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE類型。範圍在
-π/2~π/2
之間。number值為NULL時,返回NULL。樣本
--返回0.7853981633974483。
select atan(1);
--返回-0.7853981633974483。
select atan(-1);
--返回NULL。
select atan(null);
CEIL
命令格式
bigint ceil(<value>)
命令說明
向上取整,返回不小於輸入值value的最小整數。
參數說明
value:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回BIGINT類型。number值為NULL時,返回NULL。
樣本
--返回2。
select ceil(1.1);
--返回-1。
select ceil(-1.1);
--返回NULL。
select ceil(null);
CONV
命令格式
string conv(<input>, bigint <from_base>, bigint <to_base>)
命令說明
該函數為進位轉換函式。
參數說明
input:必填。以STRING表示的要轉換的整數值,支援BIGINT和DOUBLE的隱式轉換。
from_base、to_base:必填。以十進位表示的進位值,支援的值為2、8、10和16。支援STRING及DOUBLE類型的隱式轉換。
傳回值說明
返回STRING類型。返回規則如下:
input、from_base或to_base值為NULL時,返回NULL。
轉換過程以64位精度工作,溢出時返回NULL。
input如果是負值,即以短劃線(-)開頭,返回NULL。如果輸入的是小數,會轉為整數值後進行進位轉換,小數部分會被捨棄。
樣本
--返回12。
select conv('1100', 2, 10);
--返回C。
select conv('1100', 2, 16);
--返回171。
select conv('ab', 16, 10);
--返回AB。
select conv('ab', 16, 16);
--返回NULL。
select conv('1100', null, 10);
CORR
命令格式
double corr(<col1>, <col2>)
命令說明
計算兩列資料的皮爾遜係數(Pearson Correlation Coefficien)。
參數說明
col1、col2:必填。待計算皮爾遜係數的表的兩個列名稱。DOUBLE、BIGINT、INT、SMALLINT、TINYINT、FLOAT、DECIMAL類型。col1和col2的資料類型可以不相同。
傳回值說明
返回DOUBLE類型。如果某一輸入列的某一行存在NULL值,該行不參與計算。
COS
命令格式
double|decimal cos(<number>)
命令說明
計算number的餘弦函數,輸入為弧度值。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回2.6794896585028633e-8。
select cos(3.1415926/2);
--返回-0.9999999999999986。
select cos(3.1415926);
--返回NULL。
select cos(null);
COSH
命令格式
double|decimal cosh(<number>)
命令說明
計算number的雙曲餘弦函數。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回2.5091784169949913。
select cosh(3.1415926/2);
--返回NULL。
select cosh(null);
COT
命令格式
double|decimal cot(<number>)
命令說明
計算number的餘切函數,輸入為弧度值。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回2.6794896585028643E-8。
select cot(3.1415926/2);
--返回NULL。
select cot(null);
DEGREES
命令格式
double degrees(<number>)
命令說明
將弧度轉換為角度。
參數說明
number:必填。DOUBLE、BIGINT、INT、SMALLINT、TINYINT、FLOAT、DECIMAL、STRING類型。
傳回值說明
返回DOUBLE類型。number值為NULL時,返回NULL。
樣本
--返回90.0。
select degrees(1.5707963267948966);
--返回0.0。
select degrees(0);
--返回NULL。
select degrees(null);
E
命令格式
double e()
命令說明
返回
e
的值。傳回值說明
返回DOUBLE類型。
樣本
--返回2.718281828459045。 select e();
EXP
命令格式
double|decimal exp(<number>)
命令說明
計算number的指數函數。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回4.810477252069109。
select exp(3.1415926/2);
--返回NULL。
select exp(null);
FLOOR
命令格式
bigint floor(<number>)
命令說明
向下取整,返回不大於number的最大整數值。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回BIGINT類型。number值為NULL時,返回NULL。
樣本
--返回1。
select floor(1.2);
--返回0。
select floor(0.1);
--返回-2。
select floor(-1.2);
--返回-1。
select floor(-0.1);
--返回0。
select floor(0.0);
--返回0。
select floor(-0.0);
--返回NULL。
select floor(null);
FORMAT_NUMBER
命令格式
string format_number(float|double|decimal <expr1>, <expr2>)
命令說明
將數字轉化為指定格式的字串。
參數說明
expr1:必填。需要格式化的資料。DOUBLE、BIGINT、INT、SMALLINT、TINYINT、FLOAT、DECIMAL、STRING類型。
expr2:必填。需要轉化的目標格式。指定需要保留小數位元。也可以為類似
#,###,###.##
格式描述。
傳回值說明
返回STRING類型資料。返回規則如下:
如果expr2>0,則四捨五入到小數點後指定位元。
如果expr2=0,則沒有小數點或小數部分。
如果expr2<0,或者expr2>340,則返回報錯。
expr1或expr2值為NULL時,返回NULL。
樣本
--返回5.230。
select format_number(5.230134523424545456,3);
--返回12,332.123。
select format_number(12332.123456, '#,###,###,###.###');
--返回NULL。
select format_number(null,3);
ISNAN
命令格式
boolean isnan(<expr>)
命令說明
判斷expr的值是否為NaN。
參數說明
expr:必填。DOUBLE類型。輸入為STRING、BIGINT、DECIMAL類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
如果expr的值為NaN,返回True,否則返回False。
expr的值為NULL時,返回False。
樣本
--返回False。 SELECT isnan(100.1);
LN
命令格式
double|decimal ln(<number>)
命令說明
計算number的自然對數。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為負數或0時,返回NULL。
number值為NULL時,返回NULL。
樣本
--返回1.144729868791239。
select ln(3.1415926);
--返回NULL。
select ln(null);
LOG
命令格式
double log(<base>, <x>)
命令說明
計算以base為底的x的對數。
參數說明
base:必填。底數。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
x:必填。待計算對數的值。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE類型。 返回規則如下:
base或x為NULL時,返回NULL。
base或x為負數或0時,返回NULL。
如果base為1(會引發一個除零行為),會返回NULL。
樣本
--返回4.0。
select log(2, 16);
--返回NULL。
select log(2, null);
LOG10
命令格式
double log10(<number>)
命令說明
返回以10為底,number的對數。
參數說明
number:必填。DOUBLE、BIGINT、INT、SMALLINT、TINYINT、FLOAT、DECIMAL、STRING類型。
傳回值說明
返回DOUBLE類型。number值為0、負數或NULL時,返回NULL。
樣本
--返回NULL。
select log10(null);
--返回NULL。
select log10(0);
--返回0.9030899869919435。
select log10(8);
LOG2
命令格式
double log2(<number>)
命令說明
返回以2為底,number的對數。
參數說明
number:必填。DOUBLE、BIGINT、INT、SMALLINT、TINYINT、FLOAT、DECIMAL、STRING類型。
傳回值說明
返回DOUBLE類型。number值為0、負數或NULL時,返回NULL。
樣本
--返回NULL。
select log2(null);
--返回NULL。
select log2(0);
--返回3.0。
select log2(8);
NEGATIVE
命令格式
TINYINT|SMALLINT|INT|BIGINT|DOUBLE|DECIMAL negative(TINYINT|SMALLINT|INT|BIGINT|DOUBLE|DECIMAL <expr>)
命令說明
返回expr的負值。
參數說明
expr:必填。輸入運算式,支援TINYINT、SMALLINT、INT、BIGINT、DOUBLE、DECIMAL類型。
傳回值說明
返回expr運算式的負值。
樣本
--返回-1。 SELECT negative(1);
PI
命令格式
double pi()
命令說明
返回π的值。
傳回值說明
返回DOUBLE類型。
樣本
--返回3.141592653589793。 select pi();
POSITIVE
命令格式
TINYINT|SMALLINT|INT|BIGINT|DOUBLE|DECIMAL positive(TINYINT|SMALLINT|INT|BIGINT|DOUBLE|DECIMAL <expr>)
命令說明
返回expr的值。
參數說明
expr:必填。輸入運算式,支援TINYINT、SMALLINT、INT、BIGINT、DOUBLE、DECIMAL類型。
傳回值說明
返回expr運算式的值。
樣本
--返回1。 SELECT positive(1);
POW
命令格式
double|decimal pow(<x>, <y>)
命令說明
計算x的y次方,即
x^y
。參數說明
x:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
y:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
x或y為DOUBLE、DECIMAL類型時會返回相應的類型。
x或y為STRING、BIGINT類型時,返回DOUBLE類型。
x或y值為NULL時,返回NULL。
樣本
--返回65536.0。
select pow(2, 16);
--返回NULL。
select pow(2, null);
RADIANS
命令格式
double radians(<number>)
命令說明
將角度轉換為弧度。
參數說明
number:必填。DOUBLE、BIGINT、INT、SMALLINT、TINYINT、FLOAT、DECIMAL、STRING類型。
傳回值說明
返回DOUBLE類型。number值為NULL時,返回NULL。
樣本
--返回1.5707963267948966。
select radians(90);
--返回0.0。
select radians(0);
--返回NULL。
select radians(null);
RAND
命令格式
double rand(bigint <seed>)
命令說明
返回DOUBLE類型的隨機數,傳回值區間是0~1。
參數說明
seed:可選。BIGINT類型。隨機數種子,決定隨機數序列的起始值。
說明您可以通過seed確定隨機數序列,seed確定後,即可固定該函數的返回結果。執行環境是一樣的情況下,seed取值不變的話,傳回值是一樣的,如果需要返回不一樣的結果,需要修改seed取值。
傳回值說明
返回DOUBLE類型。
樣本
--返回4.7147460303803655E-4。 select rand(); --返回0.7308781907032909。 select rand(1);
ROUND
命令格式
double|decimal round(<number>[, bigint <decimal_places>])
命令說明
四捨五入到指定小數點位置。
參數說明
number:必填。DOUBLE類型或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
decimal_places:可選。BIGINT類型常量,四捨五入計算到小數點後的位置。如果省略表示四捨五入到個位元,預設值為0。
說明decimal_places可以是負數。負數會從小數點向左開始計數,並且不保留小數部分。如果decimal_places超過了整數部分長度,返回0。
傳回值說明
返回DOUBLE類型或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
decimal_places非BIGINT類型時,返回報錯。
number或decimal_places值為NULL時,返回NULL。
樣本
--返回125.0。
select round(125.315);
--返回125.3。
select round(125.315, 1);
--返回125.32。
select round(125.315, 2);
--返回125.315。
select round(125.315, 3);
--返回-125.32。
select round(-125.315, 2);
--返回100.0。
select round(123.345, -2);
--返回NULL。
select round(null);
--返回123.345。
select round(123.345, 4);
--返回0.0。
select round(123.345, -4);
SHIFTLEFT
命令格式
int shiftleft(tinyint|smallint|int <number1>, int <number2>) bigint shiftleft(bigint <number1>, int <number2>)
命令說明
按位左移(<<)。
參數說明
number1:必填。TINYINT、SMALLINT、INT或BIGINT類型。
number2:必填。INT類型。
傳回值說明
返回INT或BIGINT類型。返回規則如下
number1非TINYINT、SMALLINT、INT或BIGINT類型時,返回報錯。
number2非INT類型時,返回報錯。
number1或number2值為NULL時,返回NULL。
樣本
--返回4。1的二進位左移2位(1<<2,0001左移兩位是0100)。
select shiftleft(1,2);
--返回32。4的二進位左移3位(4<<3,0100左移3位是100000)。
select shiftleft(4,3);
--返回NULL。
select shiftleft(null,2);
SHIFTRIGHT
命令格式
int shiftright(tinyint|smallint|int <number1>, int <number2>) bigint shiftright(bigint <number1>, int <number2>)
命令說明
按位右移(>>)。
參數說明
number1:必填。TINYINT、SMALLINT、INT或BIGINT類型。
number2:必填。INT類型。
傳回值說明
返回INT或BIGINT類型。返回規則如下:
number1非TINYINT、SMALLINT、INT或BIGINT類型時,返回報錯。
number2非INT類型時,返回報錯。
number1或number2值為NULL時,返回NULL。
樣本
--返回1。4的二進位右移2位(4>>2,1000右移兩位是0001)。
select shiftright(4,2);
--返回4。32的二進位右移3位(32>>3,100000右移3位是0100)。
select shiftright(32,3);
--返回NULL。
select shiftright(null,3);
SHIFTRIGHTUNSIGNED
命令格式
int shiftrightunsigned(tinyint|smallint|int <number1>, int <number2>) bigint shiftrightunsigned(bigint <number1>, int <number2>)
命令說明
無符號按位右移(>>>)。
參數說明
number1:必填。TINYINT、SMALLINT、INT或BIGINT整型資料。
number2:必填。INT整型資料。
傳回值說明
返回INT或BIGINT類型。返回規則如下:
number1非TINYINT、SMALLINT、INT或BIGINT類型時,返回報錯。
number2非INT類型時,返回報錯。
number1或number2值為NULL時,返回NULL。
樣本
--返回2。8的二進位無符號右移2位(8>>>2,1000右移兩位是0010)。
select shiftrightunsigned(8,2);
--返回1073741820。-14的二進位右移2位(-14>>>2, 11111111 11111111 11111111 11110010右移2位是00111111 11111111 11111111 11111100)。
select shiftrightunsigned(-14,2);
--返回NULL。
select shiftrightunsigned(-14,null);
SIGN
命令格式
double sign(<number>)
命令說明
擷取輸入參數的符號。
參數說明
number:必填。DOUBLE、BIGINT、INT、SMALLINT、TINYINT、FLOAT、DECIMAL、STRING類型。
傳回值說明
返回DOUBLE類型。返回規則如下:
number值為正數時,返回1.0。
number值為負數時,返回-1.0。
number值為0時,返回0.0。
number值為NULL時,返回NULL。
樣本
--返回-1.0。
select sign(-2.5);
--返回1.0。
select sign(2.5);
--返回0.0。
select sign(0);
--返回NULL。
select sign(null);
SIN
命令格式
double|decimal sin(<number>)
命令說明
計算number的正弦函數,輸入為弧度值。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回-0.3048106211022167。
select sin(60);
--返回NULL。
select sin(null);
SINH
命令格式
double|decimal sinh(<number>)
命令說明
計算number的雙曲正弦函數。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回5.343237290762231E12。
select sinh(30);
--返回NULL。
select sinh(null);
SQRT
命令格式
double|decimal sqrt(<number>)
命令說明
計算number的平方根。
參數說明
number:必填。DOUBLE或DECIMAL類型,必須大於0,小於0時返回NULL。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回2.0。
select sqrt(4);
--返回NULL。
select sqrt(null);
TAN
命令格式
double|decimal tan(<number>)
命令說明
計算number的正切函數,輸入為弧度值。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回-6.405331196646276。
select tan(30);
--返回NULL。
select tan(null);
TANH
命令格式
double|decimal tanh(<number>)
命令說明
計算number的雙曲正切函數。
參數說明
number:必填。DOUBLE或DECIMAL類型。輸入為STRING、BIGINT類型時,會隱式轉換為DOUBLE類型後參與運算。
傳回值說明
返回DOUBLE或DECIMAL類型。返回規則如下:
number為DOUBLE、DECIMAL類型時會返回相應的類型。
number為STRING、BIGINT類型時,返回DOUBLE類型。
number值為NULL時,返回NULL。
樣本
--返回1.0。
select tanh(30);
--返回NULL。
select tanh(null);