- /**************************For date****************************/
- SELECT TRUNC(SYSDATE),
- TRUNC(SYSDATE, ‘YYYY‘),
- TRUNC(SYSDATE, ‘MM‘),
- TRUNC(SYSDATE, ‘DD‘),
- TRUNC(SYSDATE, ‘D‘),
- TRUNC(SYSDATE, ‘HH‘),
- TRUNC(SYSDATE, ‘MI‘)
- FROM DUAL;
- select Round(sysdate, ‘Q‘) Rnd_Q,
- Round(sysdate, ‘Month‘) Rnd_Month,
- Round(sysdate, ‘WW‘) Rnd_Week,
- Round(sysdate, ‘W‘) Rnd_Week_again,
- Round(sysdate, ‘DDD‘) Rnd_day,
- Round(sysdate, ‘DD‘) Rnd_day_again,
- Round(sysdate, ‘DAY‘) Rnd_day_of_week,
- Round(sysdate, ‘D‘) Rnd_day_of_week_again,
- Round(sysdate, ‘HH12‘) Rnd_hour_12,
- Round(sysdate, ‘HH24‘) Rnd_hour_24,
- Round(sysdate, ‘MI‘) Rnd_minute
- from dual;
-
- /****************************For number************************/
- /**
- Number 需要截尾取整的数字。
- Num_digits 指明需保留小数点后面的位数。可选项,忽略他则截去任何的小数部分,Num_digits 的默认值为 0,
- TRUNC()函数截取时不进行四舍五入**/
- select TRUNC(123.458),
- TRUNC(123.458, 0),
- TRUNC(123.458, 1),
- TRUNC(123.458, 2),
- TRUNC(123.458, 3),
- TRUNC(123.458, 4),
- TRUNC(123.458, -1),
- TRUNC(123.458, -2),
- TRUNC(123.458, -3),
- TRUNC(123.458, -4),
- TRUNC(123),
- TRUNC(123, 1),
- TRUNC(123, 2),
- TRUNC(123, 3),
- TRUNC(123, 4)
- from dual;
- select Round(123.458),
- Round(123.458, 0),
- Round(123.458, 1),
- Round(123.458, 2),
- Round(123.458, 3),
- Round(123.458, 4),
- Round(123.458, -1),
- Round(123.458, -2),
- Round(123.458, -3),
- Round(123.458, -4),
- Round(123),
- Round(123, 1),
- Round(123, 2),
- Round(123, 3),
- Round(123, 4)
- from dual;
round(x[,y])
【功能】返回四舍五入后的值
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则四舍五入为y位小数,如果y小于0则四舍五入到小数点向左第y位。
【返回】数字
【示例】 select round(5555.6666,2.1),round(5555.6666,-2.6),round(5555.6666) from dual;
返回: 5555.67 , 5600 , 5556
【相近】trunc(x[,y]) 返回截取后的值,用法同round(x[,y]),只是不四舍五入
trunc(x[,y])
【功能】返回x按精度y截取后的值
【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
【返回】数字
【示例】 select trunc(5555.66666,2.1),trunc(5555.66666,-2.6),trunc(5555.033333) from dual;
返回:5555.66 5500 5555
【相近】round(x[,y]) 返回截取后的值,用法同trunc(x[,y]),只是要做四舍五入