小巧。快速。可靠。
任選三項。
內建數學 SQL 函數

1. 概觀

下方顯示的數學函數是 純量函數 的子群組,內建於 SQLite 混合來源檔案 中,但只有在混合檔案使用 -DSQLITE_ENABLE_MATH_FUNCTIONS 編譯時期選項進行編譯時才會啟用。

數學函數的引數可以是整數、浮點數、或看起來像整數或實數的字串或二進制大型物件。如果任何引數為 NULL 或為無法輕易轉換為數字的字串或二進制大型物件,函數將傳回 NULL。這些函數也會針對網域錯誤傳回 NULL,例如嘗試取得負數的平方根,或計算大於 1.0 或小於 -1.0 的值的反餘弦。

這些函數傳回的值通常是近似值。例如,pi() 函數傳回 3.141592653589793115997963468544185161590576171875,比實際值小約 1.22465e-16,但這是 IEEE754 雙精度浮點數可用的最接近近似值。

2. 內建純量 SQL 數學函數說明

acos(X)

傳回 X 的反餘弦值。結果以弧度表示。

acosh(X)

傳回 X 的雙曲反餘弦值。

asin(X)

傳回 X 的反正弦值。結果以弧度表示。

asinh(X)

傳回 X 的雙曲反正弦值。

atan(X)

傳回 X 的反正切值。結果以弧度表示。

atan2(Y,X)

傳回 Y/X 的反正切值。結果以弧度表示。結果會根據 X 和 Y 的符號置於正確的象限。

atanh(X)

傳回 X 的雙曲反正切值。

ceil(X)
ceiling(X)

傳回大於或等於 X 的第一個可表示整數值。對於 X 的正值,此常式會四捨五入至遠離零。對於 X 的負值,此常式會四捨五入至接近零。

cos(X)

傳回 X 的餘弦值。X 以弧度表示。

cosh(X)

傳回 X 的雙曲餘弦值。

degrees(X)

將值 X 從弧度轉換為角度。

exp(X)

計算 e (歐拉數,約為 2.71828182845905) 乘冪 X。

floor(X)

傳回小於或等於 X 的第一個可表示整數值。對於正數,此函數會四捨五入至接近零。對於負數,此函數會四捨五入至遠離零。

ln(X)

傳回 X 的自然對數。

log(X)
log10(X)
log(B,X)

傳回 X 的 10 為底對數。或對於兩個引數的版本,傳回 X 的 B 為底對數。

相容性注意事項:SQLite 的運作方式與 PostgreSQL 類似,log() 函數會計算 10 為底對數。大多數其他 SQL 資料庫引擎會計算 log() 的自然對數。在 log(B,X) 的兩個引數版本中,第一個引數為底數,第二個引數為運算元。這與 PostgreSQL 和 MySQL 相同,但與 SQL Server 相反,後者使用第二個引數作為底數,第一個引數作為運算元。

log2(X)

傳回數字 X 的 2 為底對數。

mod(X,Y)

傳回將 X 除以 Y 後的餘數。這類似於 '%' 運算子,但它適用於非整數引數。

pi()

傳回 π 的近似值。

pow(X,Y)
power(X,Y)

計算 X 乘冪 Y。

radians(X)

將 X 從角度轉換為弧度。

sin(X)

傳回 X 的正弦值。X 以弧度表示。

sinh(X)

傳回 X 的雙曲正弦值。

sqrt(X)

傳回 X 的平方根。如果 X 為負數,則傳回 NULL。

tan(X)

傳回 X 的正切值。X 以弧度表示。

tanh(X)

傳回 X 的雙曲正切值。

trunc(X)

傳回 X 和 0(含)之間可表示的整數,該整數與 0 的距離最遠。或者換句話說,傳回 X 的整數部分,朝向 0 捨入。trunc() 函數類似於 ceiling(X)floor(X),但它總是朝向 0 捨入,而 ceiling(X) 和 floor(X) 分別向上和向下捨入。

此頁面最後修改於 2023-12-05 14:43:20 UTC