Oracle函數(shù)之數(shù)值函數(shù)


1. 絕對值函數(shù) abs(x)

  • 功能:返回x的絕對值
  • 參數(shù):數(shù)值型表達式
  • 返回:x的絕對值

SQL和執(zhí)行結(jié)果:
SELECT ABS(-12.345), ABS(67.890), ABS(0) FROM dual;

ABS(x)


2. 正負1函數(shù) sign(x)

  • 功能:根據(jù)x的值,以±1或0的形式,返回x的正負號
  • 參數(shù):數(shù)值型表達式
  • 返回:x若為正值返回1,負值返回-1,0返回0

SQL和執(zhí)行結(jié)果:
SELECT SIGN(0), SIGN(-1.2345), SIGN(6.7890) FROM dual;

SIGN(x)


3.1 向上取整函數(shù)ceil(x)

  • 功能:獲得大于等于x最小整數(shù)
  • 參數(shù):數(shù)值型表達式
  • 返回:
    1,一個整數(shù)
    2,該整數(shù)大于等于x
    3,該整數(shù)和x之間不存在其他整數(shù)

SQL和執(zhí)行結(jié)果:
SELECT CEIL(-0.5),CEIL(-2.1),CEIL(-15.8),ceil(0),CEIL(0.5),CEIL(2.1),CEIL(-15.8) FROM dual;

CEIL(x)

3.2 向下取整函數(shù)floor(x)

  • 功能:獲得小于等于x最大整數(shù)
  • 參數(shù):數(shù)值型表達式
  • 返回:
    1,一個整數(shù)
    2,該整數(shù)小于等于x
    3,該整數(shù)和x之間不存在其他整數(shù)

SQL和執(zhí)行結(jié)果:
SELECT FLOOR(-0.5),FLOOR(-2.1),FLOOR(-15.8),FLOOR(0),FLOOR(0.5),FLOOR(2.1),FLOOR(15.8) FROM dual;

FLOOR(x)

記憶

  • Ceil意為“天花板”,ceil()函數(shù)是“向上取整函數(shù)”(天花板在
  • Floor意為“地板”,floor()函數(shù)是“向下取整函數(shù)”(地板在

4. 四舍五入函數(shù)round(x[,y])

  • 功能:計算對x四舍五入保留y位小數(shù)
  • 參數(shù):x,y 數(shù)值型表達式
  • 返回:對x四舍五入保留y位小數(shù)的結(jié)果
  1. x可以是正負整數(shù)或小數(shù)
  2. y默認為0,可以是正負整數(shù)或小數(shù)
  3. y為小數(shù)時,截取y的整數(shù)部分
  4. y為正數(shù)時,從小數(shù)點右邊y位開始四舍五入
    y為負數(shù)時,從小數(shù)點左邊y位開始四舍五入

SQL和執(zhí)行結(jié)果:
SELECT ROUND(1.234567), ROUND(-1.234567, 1), ROUND(1.234567, 2.3), ROUND(-1.234567, 4.5), ROUND(1234567.89, -5), ROUND(-1.234567, 9) FROM dual;

ROUND(x[,y])


5. 截取函數(shù)trunc(x[,y])

  • 功能:計算對x截取y位
  • 參數(shù):x,y 數(shù)值型表達式
  • 返回:對x截取y位的結(jié)果
  1. 截取不會有任何進位或四舍五入
  2. x可以是正負整數(shù)或小數(shù)
  3. y默認為0,可以是正負整數(shù)或小數(shù)
  4. y為小數(shù)時,截取y的整數(shù)部分
  5. y為正數(shù)時,從小數(shù)點右邊y位開始截取
    y為負數(shù)時,從小數(shù)點左邊y位開始截取

SQL和執(zhí)行結(jié)果:
SELECT TRUNC(1.234567), TRUNC(-1.234567, 1), TRUNC(1.234567, 2.3), TRUNC(-1.234567, 4.5), TRUNC(1234567.89, -5), TRUNC(-1.234567, 9) FROM dual;

TRUNC(x[,y])


6. 取余函數(shù)mod(x,y)

  • 功能:計算x/y的余數(shù)
  • 參數(shù):x,y 數(shù)值型表達式
  • 返回:x/y的余數(shù)

SQL和執(zhí)行結(jié)果:
SELECT MOD(81, 3), MOD(100, 101), MOD(-123.45, 6.7), MOD(10, -3.3), MOD(-78.9, -2) FROM dual;

MOD(x,y)


7. 開方函數(shù)sqrt(x)

  • 功能:計算x的平方根
  • 參數(shù):x 數(shù)值型表達式,必須大于等于0
  • 返回:x的平方根

SQL和執(zhí)行結(jié)果:
SELECT SQRT(81), SQRT(2), SQRT(0), SQRT(3.5) FROM dual;

SQRT(x)


8. 冪函數(shù) power(x,y)

  • 功能:計算x的y次冪
  • 參數(shù):x,y 數(shù)值型表達式
  • 返回:x的y次冪

特別的:當x為常數(shù)e時的冪函數(shù)exp(y)

  • 功能:計算常數(shù)e的y次冪
  • 參數(shù):y 數(shù)值型表達式
  • 返回:e的y次冪

SQL和執(zhí)行結(jié)果:
SELECT EXP(2), POWER(3, 2), POWER(-0.5, 3), POWER(10, -1), POWER(81, 0.5) FROM dual;

POWER(x,y),EXP(y)


9. 對數(shù)函數(shù) log(x,y)

  • 功能:計算以x為底的y的對數(shù)
  • 參數(shù):x,y 數(shù)值型表達式,且均大于0
  • 返回:以x為底的y的對數(shù)

特別的:當x為常數(shù)e時的y的對數(shù)ln(y)

  • 功能:計算以常數(shù)e為底的y的對數(shù)
  • 參數(shù):y 數(shù)值型表達式,且大于0
  • 返回:以e為底的y的對數(shù)

SQL和執(zhí)行結(jié)果:
SELECT LOG(1.23, 45.67), LOG(8, 9), LN(123.45), LN(678) FROM dual;

LOG(x,y),LN(y)


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容