Oracle to_char函数中FM的作用

Oracle to_char函数中FM的作用

-- 不带FM的格式
-- 不带FM的返回数据第一位永远是空格,且不占指定格式的位数
-- 0:无非0数字则用0补充,超过指定格式长度则返回#
SELECT to_char(0, '00000.000') FROM dual;       -- 空格+00000.000
SELECT to_char(10, '00000.000') FROM dual;      -- 空格+00010.000 
SELECT to_char(010.10, '00000.000') FROM dual;  -- 空格+00010.100
SELECT to_char(111010.10, '00000.000') FROM dual; -- ##########

-- 9:非零数字前的0用空格代替,不带FM的仅小数点前的起作用
SELECT to_char(0.10, '99999.999') FROM dual;    -- 空格+五个空格+.100
SELECT to_char(0, '99999.999') FROM dual;	    -- 空格+五个空格+.000
SELECT to_char(10, '99999.999') FROM dual;		-- 空格+三个空格+10.000
SELECT to_char(010.10, '99999.999') FROM dual;  -- 空格+三个空格+10.100

-- 带FM的格式
-- FM:移除因9带来的空格和0
-- fm00000.000和00000.000的效果差不多,只是没有空格
SELECT to_char(10, 'fm00000.000') FROM dual;     -- 00010.000
SELECT to_char(010.10, 'fm00000.000') FROM dual; -- 00010.100

-- 9先把前后0转换成空格,FM再移除空格
SELECT to_char(0.10, 'fm99999.999') FROM dual;   -- .1
SELECT to_char(0, 'fm99999.999') FROM dual;		 -- 0.
SELECT to_char(10, 'fm99999.999') FROM dual;	 -- 10.
SELECT to_char(010.10, 'fm99999.999') FROM dual; -- 10.1
  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值