3.4.4 數學函數
這些函數僅適用于數值表達式。如果用于其他類型的值,將返回錯誤。
數學函數圖例如圖3-26所示。

圖3-26 數學函數圖例
1.數值函數
(1)abs():abs()函數返回數值的絕對值。
語法:abs(expression)
參數:
● expression:數值表達式。
查詢:

結果將返回兩個年齡差值的絕對值。
結果:

(2)ceil():ceil()返回大于或等于實參的最小整數。
語法:ceil(expression)
參數:
● expression:數值表達式。
查詢:

結果將返回大于0.1的最小整數,即為1。
結果:

(3)floor():floor()返回小于等于表達式的最大的整數。
語法:floor(expression)
參數:
● expression:數值表達式。
查詢:

小于等于0.9的最大的整數為0。
結果:

(4)round():round()返回距離表達式值最近的整數。
語法:round(expression)
參數:
● expression:數值表達式。
查詢:

距離3.141592最近的整數為3。
結果:

(5)sign():sign()返回一個數值的正負。如果值為零,則返回0;如果值為負數,則返回-1;如果值為正數,則返回1。
語法:sign(expression)
參數:
● expression:數值表達式。
查詢:

結果將返回-17和0.1的正負符號。
結果:

(6)rand():rand()返回[0, 1)之間的一個隨機數,返回的數值在整個區間遵循均勻分布。
語法:rand()
參數:無
查詢:

結果將返回一個隨機數。
結果:

2.對數函數
(1)log():log()返回表達式的自然對數。
語法:log(expression)
參數:
● expression:數值表達式。
查詢:

結果將返回27的自然對數的值。
結果:

(2)log10():log10()返回表達式的常用對數(以10為底)。
語法:log10(expression)
參數:
● expression:數值表達式。
查詢:

結果將返回27的常用對數。
結果:

(3)exp():exp()返回e^n,這里e是自然對數的底,n是表達式的實參值。
語法:e(expression)
參數:
● expression:數值表達式。
查詢:

結果將返回e的平方值。
結果:

(4)e():e()返回自然對數的底,即e。
語法:e()
參數:無
查詢:

結果將返回自然對數的底e的值。
結果:

(5)sqrt():sqrt()返回數值的平方根。
語法:sqrt(expression)
參數:
● expression:數值表達式。
查詢:

結果將返回256的平方根,即16。
結果:

3.三角函數
除非特別指明,所有的三角函數都是針對弧度值進行計算的。
(1)sin():sin()返回表達式的正弦函數值。
語法:sin(expression)
參數:
● expression:一個表示角的弧度的數值表達式。
查詢:

結果將返回角弧度為0.5的正弦值。
結果:

(2)cos():cos()返回表達式的余弦函數值。
語法:cos(expression)
參數:
● expression:一個表示角弧度的數值表達式。
查詢:

結果將返回角弧度為0.5的余弦值。
結果:

(3)tan():tan()返回表達式的正切值。
語法:tan(expression)
參數:
● expression:一個表示角弧度的數值表達式。
查詢:

結果將返回角弧度為0.5的正切值。
結果:

(4)cot():cot()返回表達式的余切值。
語法:cot(expression)
參數:
● expression:一個表示角弧度的數值表達式。
查詢:

結果將返回角弧度為0.5的余切值。
結果:

(5)asin():asin()返回表達式的反正弦值。
語法:asin(expression)
參數:
● expression:一個表示角弧度的數值表達式。
查詢:

結果將返回角弧度為0.5的反正弦值。
結果:

(6)acos():acos()返回表達式的反余弦值。
語法:acos(expression)
參數:
● expression:一個表示角弧度的數值表達式。
查詢:

結果將返回角弧度為0.5的反余弦值。
結果:

(7)atan():atan()返回表達式的反正切值。
語法:atan(expression)
參數:
● expression:一個表示角弧度的數值表達式。
查詢:

結果將返回角弧度為0.5的反正切值。
結果:

(8)atan2():atan2()返回方位角,也可以理解為計算復數x+yi的幅角。
語法:atan2(expression1, expression2)
參數:
● expression1:表示復數x部分的數值表達式。
● expression2:表示復數y部分的數值表達式。
查詢:

結果將返回復數為0.5+0.6i的方位角。
結果:

(9)pi():pi()返回常數pi的數值。
語法:pi()
參數:無
查詢:

結果將返回常數Π的值。
結果:

(10)degrees():degrees()將弧度轉為度。
語法:degrees(expression)
參數:
● expression:一個表示角弧度的數值表達式。
查詢:

結果將返回接近于Π的度數。
結果:

(11)radians():radians()將度轉為弧度。
語法:radians(expression)
參數:
● expression:一個表示角度數的數值表達式。
查詢:

結果將返回180°的弧度值(Π)。
結果:

(12)haversin():haversin()返回表達式的半正矢值。
語法:haversin(expression)
參數:
● expression:一個表示角弧度的數值表達式。
查詢:

結果將返回弧度為0.5的半正矢值。
結果:

(13)使用haversin函數計算球面距離:haversin()函數可用于計算球面上兩點(以經緯度的方式給出)之間的距離。下面示例計算了德國柏林(lat 52.5,lon 13.4)和美國加州圣馬特奧市(lat 375,lon -122.3)兩點之間的球面距離(以km計),計算時采用的是地球的平均半徑6371km。
查詢:

結果將返回柏林和圣馬特奧之間的估算距離。
結果:

- MySQL高可用解決方案:從主從復制到InnoDB Cluster架構
- SQL Server 2016 數據庫教程(第4版)
- InfluxDB原理與實戰
- Enterprise Integration with WSO2 ESB
- 中國數字流域
- 網站數據庫技術
- 計算機組裝與維護(微課版)
- 二進制分析實戰
- Visual Studio 2013 and .NET 4.5 Expert Cookbook
- 計算機視覺
- 機器學習:實用案例解析
- Mastering ROS for Robotics Programming(Second Edition)
- 企業級大數據項目實戰:用戶搜索行為分析系統從0到1
- Cognitive Computing with IBM Watson
- NoSQL數據庫原理(第2版·微課版)