float 字段 赋值后 小数位丢失

meilian01 2013-03-07 04:51:30
t3的QTY是float类型

按以下方式赋值后,小数位丢失
update #t set LABELIDQTY=t3.QTY
from #t3 t3 , #t t
where t3.PRONUM=t.PRONUM

用以下方式转换,还是不行
update #t set LABELIDQTY=CONVERT(DECIMAL(18,2),t3.QTY)
from #t3 t3 , #t t
where t3.PRONUM=t.PRONUM
...全文
416 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
meilian01 2013-03-07
  • 打赏
  • 举报
回复
你是对的,LABELIDQTY类型有问题
引用 1 楼 szm341 的回复:
float与real是近似值,要用deciaml或者numeric这类精确值作为类型 你先查询一下什么情况,是不是LABELIDQTY字段也是float类型啊 select CONVERT(DECIMAL(18,2),t3.QTY) from #t3 t3 , #t t where t3.PRONUM=t.PRONUM
guguda2008 2013-03-07
  • 打赏
  • 举报
回复
SELECT LTRIM(QTY)+0,CONVERT(NUMERIC(19,2),T3.QTY),CONVERT(NUMERIC(19,6),T3.QTY) FROM #T3 都不行吗?
szm341 2013-03-07
  • 打赏
  • 举报
回复
float与real是近似值,要用deciaml或者numeric这类精确值作为类型 你先查询一下什么情况,是不是LABELIDQTY字段也是float类型啊 select CONVERT(DECIMAL(18,2),t3.QTY) from #t3 t3 , #t t where t3.PRONUM=t.PRONUM

34,576

社区成员

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

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