Round
如果num_digits大于 0(零),則將數(shù)字四舍五入到指定的小數(shù)位。
如果num_digits等于 0,則將數(shù)字四舍五入到最接近的整數(shù)。
如果num_digits小于 0,則在小數(shù)點(diǎn)左側(cè)前幾位進(jìn)行四舍五入。
select round(412,-2) from dual;
select round(412.313,2) from dual;
若要始終進(jìn)行向上舍入(遠(yuǎn)離 0),請使用ROUNDUP函數(shù)。
若要始終進(jìn)行向下舍入(朝向 0),請使用ROUNDDOWN函數(shù)。
若要將某個數(shù)字四舍五入為指定的倍數(shù)(例如,四舍五入為最接近的 0.5 倍),請使用MROUND函數(shù)。
Mod
mod函數(shù)是一個求余函數(shù),其格式為: mod(nExp1,nExp2),即是兩個數(shù)值表達(dá)式作除法運(yùn)算后的余數(shù)
select mod(-5,-2) fromdual;
select mod(5,2) from dual;
Trunc
用法1:TRUNC函數(shù)返回處理后的數(shù)值,其工作機(jī)制與ROUND函數(shù)極為類似,只是該函數(shù)不對指定小數(shù)前或后的部分做相應(yīng)舍入選擇處理,而統(tǒng)統(tǒng)截去。
selecttrunc(412.13,-2) from dual;
用法2:
下面是該函數(shù)的使用情況:
trunc(sysdate,'yyyy')
--返回當(dāng)年第一天.
trunc(sysdate,'mm')
--返回當(dāng)月第一天.
trunc(sysdate,'d')
--返回當(dāng)前星期的第一天