我有一个oracle列(artnr)包含长度为1的类型为number(9).我想更新数字如下......
示例:
如果number为0则为00000如果number为1则为00001如果number为12则应为00012
记住:这里00000,0000和00012是数字数据类型
以下是我尝试但失败的方法..
UPDATE pitb.toestel b
SET b.artnr = LPAD (b.artnr, 5, 0)
WHERE b.idinventaris = 403743;
Run Code Online (Sandbox Code Playgroud)
失败,因为Lpad只能应用于字符串
UPDATE pitb.toestel b
SET b.artnr = TO_NUMBER (TO_CHAR (artnr, '00009'), '00009')
WHERE b.idinventaris = 403743;
Run Code Online (Sandbox Code Playgroud)
仍然失败,因为to_number不会显示前导零.它只考虑第一个数字
任何人,你能不能给我一些能解决这个问题的方法.
sql比pl/sql解决方案更受欢迎