欢迎光临
我们一直在努力

Oracle数字前添加0的两种方式

有两种实现方式:

1.方式一

SELECT num, lpad(num, 5, '0') num_pad FROM DATA;

NUM NUM_P
--- -----
540 00540
60  00060
 2  00002

2. 方式二

SELECT num, to_char(num, '00000') num_pad FROM DATA;

NUM NUM_P
--- -----
540 00540
60  00060
 2  00002

为了避免用于减号的多余前导空间,可以在TO_CHAR格式化的时候使用FM

不使用FM

SELECT TO_CHAR(1, '00000') num_pad,
  LENGTH(TO_CHAR(1, '00000')) tot_len
FROM dual;

NUM_PAD    TOT_LEN
------- ----------
 00001           6

使用FM:

SELECT TO_CHAR(1, 'FM00000') num_pad,
  LENGTH(TO_CHAR(1, 'FM00000')) tot_len
FROM dual;

NUM_PAD    TOT_LEN
------- ----------
00001            5

参考:

  1. How to add leading zero in a number in Oracle SQL query?
赞(0) 打赏
未经允许不得转载:Ddmit » Oracle数字前添加0的两种方式

评论 抢沙发

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册