怎样sql把419.200变成419.2

aspdinet 2007-05-29 09:03:57
如标题所示
...全文
152 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dawugui 2007-05-29
  • 打赏
  • 举报
回复
declare @i as decimal(18,3)
set @i = 419.200

select cast(@i as decimal(18,1)) as i

/*
i
--------------------
419.2

(所影响的行数为 1 行)
*/
lwl0606 2007-05-29
  • 打赏
  • 举报
回复
declare @a nvarchar(20)
set @a='419.2100'
select reverse(Convert(nvarchar,Convert(float,reverse(@a))))

set @a='419.205600'
select reverse(Convert(nvarchar,Convert(float,reverse(@a))))
lwl0606 2007-05-29
  • 打赏
  • 举报
回复
declare @a decimal(10,3)
set @a='419.200'
-- 如果小数点后保留一位小数,这种就可以了
select Convert(decimal(10,1),@a)
-- 如果 只是去掉 小数点最后的0,位数不固定 用这种
select reverse(Convert(nvarchar,Convert(float,reverse(@a))))

aspdinet 2007-05-29
  • 打赏
  • 举报
回复
可能我没有说清楚,是表中的一列数(mc001),这一列中很多数,如419.200,32.120,43.100等,我现在想把后面所有0的都去掉,这样就变成了。419.2,32.12,43.1
leo_lesley 2007-05-29
  • 打赏
  • 举报
回复
select str(419.200,7,1)
bill024 2007-05-29
  • 打赏
  • 举报
回复
select ltrim(str(419.200,5,1))
aspdinet 2007-05-29
  • 打赏
  • 举报
回复
先顶一下

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧