sql 查询出的结果进行除法运算,结果无法四舍五入。求助!

实际结果应该是0.1917位小数够了... 实际结果应该是 0.191 7位小数够了 展开
 我来答
greystar_cn
2015-09-10 · 知道合伙人软件行家
greystar_cn
知道合伙人软件行家
采纳数:16407 获赞数:17260
本人主要从事.NET C#方向的技术开发工作,具有10多年的各类架构开发工作经验。

向TA提问 私信TA
展开全部
cast 这个地方改下烂宴燃,要放在最外面
case(( .... *100) as decimal(38,2)) 这样你的数据类型才对
你上面的祥桐是小数保留7位,*1000没饥虚有的。类型还是不变
wrongcai
2015-09-10 · TA获得超过200个赞
知道小有建树答主
回答量:380
采纳率:100%
帮助的人:266万
展开全部
什么叫无法四舍五入?

你定义成 decimal(38,7) 了 最多当然是袭茄7位拍消察小数

可以考虑加个桥扒 round(值,2) 试试
追问
d 的正确结果应该是 0.1901  7位小数够了,实际只给我保留了6位 后面的舍掉了。
实际计算结果应该是 0.191才对 7位够了啊
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
greystar_cn
2015-09-10 · 知道合伙人软件行家
greystar_cn
知道合伙人软件行家
采纳数:16407 获赞数:17260
本人主要从事.NET C#方向的技术开发工作,具有10多年的各类架构开发工作经验。

向TA提问 私信TA
展开全部
cast 这个地方改

cast( (你的计蔽侍算字段*1000 )as decimal(38,2)) 这样才态差行
最后转数据宏闭吵类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
676950180
2015-09-10 · TA获得超过115个赞
知道小有建树答主
回答量:194
采纳率:100%
帮助的人:119万
展开全部
as decimal(28, 1) 就保留一位小数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友cdbf078
2015-09-10 · TA获得超过164个赞
知道小有建树答主
回答量:281
采纳率:0%
帮助的人:103万
展开全部
用round也是可以的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式