DB2 删除尾随 0 和
DB2 remove trailing 0 and
我有 BIGINT 喜欢
5500
10800
700
10450
10000
在 select 上,我需要将它们除以 10000,然后我想删除所有以 0 结尾的小数。
所以期望的输出应该是
0.55
1.08
0.07
1.045
1
我试过
rtrim (rtrim (cast (cast ((cast (column_A as float) / 10000) as decimal(31,4)) as varchar(32000)), '0'), '.')
首先删除尾随“0”,然后删除尾随“.”。但这就是我得到的
.55
1.08
.07
1.045
1
如何让0.55和0.07保持第一个0?我以为 rtrim 只是从右边删除它们......
我也试过使用
TRIM(TRAILING '.' FROM TRIM(TRAILING '0'
而不是 RTRIM,但没有任何变化。
我正在 windows 使用 DB2 v.10.5 和 IBM Data Studio 4.1.2。
cast (0.1 as varchar (x))
returns.1
,不是0.1
.
但是 cast (decfloat (0.1) as varchar (x))
returns 0.1
.
所以请尝试以下操作:
cast (decfloat (i) / 10000 as varchar (20))
我有 BIGINT 喜欢
5500
10800
700
10450
10000
在 select 上,我需要将它们除以 10000,然后我想删除所有以 0 结尾的小数。 所以期望的输出应该是
0.55
1.08
0.07
1.045
1
我试过
rtrim (rtrim (cast (cast ((cast (column_A as float) / 10000) as decimal(31,4)) as varchar(32000)), '0'), '.')
首先删除尾随“0”,然后删除尾随“.”。但这就是我得到的
.55
1.08
.07
1.045
1
如何让0.55和0.07保持第一个0?我以为 rtrim 只是从右边删除它们...... 我也试过使用
TRIM(TRAILING '.' FROM TRIM(TRAILING '0'
而不是 RTRIM,但没有任何变化。
我正在 windows 使用 DB2 v.10.5 和 IBM Data Studio 4.1.2。
cast (0.1 as varchar (x))
returns.1
,不是0.1
.
但是 cast (decfloat (0.1) as varchar (x))
returns 0.1
.
所以请尝试以下操作:
cast (decfloat (i) / 10000 as varchar (20))