我在 MS SQL Server 表中有一个数字列(比如 column1)
数据看起来像这样
Column1
23.50000
170.50000
53.50000
注意:小数点后总是有 5 位数字。
现在我需要一个 MS SQL 查询以下列方式显示数值
Column1
00023500
00170500
00053500
整数部分为 5 位,小数部分为 3 位。
我在 MS SQL Server 表中有一个数字列(比如 column1)
数据看起来像这样
Column1
23.50000
170.50000
53.50000
注意:小数点后总是有 5 位数字。
现在我需要一个 MS SQL 查询以下列方式显示数值
Column1
00023500
00170500
00053500
整数部分为 5 位,小数部分为 3 位。
如果我理解正确你需要什么
declare @t table(a dec(18,5))
insert into @t values(23.50000),(170.50000),(53.50000),(322.50000),(413142.5022)
select a, left(replace(replicate('0',
case when 6-CHARINDEX('.',cast(a as varchar),1)<0 then 0 else
6-CHARINDEX('.',cast(a as varchar),1) end)
+cast(a as varchar),'.',''),8) from @t
我认为您应该在客户端执行此操作
RIGHT('00000000'+CONVERT(VARCHAR,CONVERT(INT,field*1000)),8)