sql查询出来的数字小数点过长怎么保留两位小数?

XiaoYi96 2018-05-30 05:09:26
今天查询出一个数字来5.6843418860808E-14,然后我在后台用datatable接收受。再用Math.Round(double.Parse(), 2);来转换,居然直接变为0了,请问这个该怎么转化??在sql中转换还是说在后台转换
...全文
4344 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
XiaoYi96 2018-06-05
  • 打赏
  • 举报
回复
引用 3 楼 u012142699 的回复:
我也试了下,需要这样转换: 具体代码:

//将科学计数法转换正正常十进制数字
var str = "5.6843418860808E-14";

Console.WriteLine(decimal.Parse(str, System.Globalization.NumberStyles.Any));
的确是这样的,谢谢您了
XiaoYi96 2018-06-05
  • 打赏
  • 举报
回复
引用 4 楼 hanjun0612 的回复:
select Convert(decimal(18,2),数字)
谢谢版主
XiaoYi96 2018-06-05
  • 打赏
  • 举报
回复
引用 6 楼 sp1234 的回复:
保留两位小数,不为0那么应该为多少呢?
sp1234大神来了啊!!!!我知道我的水平远不如您,我也知道我发的问描述不够专业惹您恼火!!!但是在批评之前能先帮我解决一下么!!!!
  • 打赏
  • 举报
回复
保留两位小数,不为0那么应该为多少呢?
TOFEMALE 2018-06-03
  • 打赏
  • 举报
回复
截断字段的显示就行了。。。 在C#中看一下string的format
正怒月神 2018-05-30
  • 打赏
  • 举报
回复
select Convert(decimal(18,2),数字)
  • 打赏
  • 举报
回复
我也试了下,需要这样转换:


具体代码:

//将科学计数法转换正正常十进制数字
var str = "5.6843418860808E-14";

Console.WriteLine(decimal.Parse(str, System.Globalization.NumberStyles.Any));
zbdzjx 2018-05-30
  • 打赏
  • 举报
回复
意思是变成5.68E-14?ToString("e2")?
xuzuning 2018-05-30
  • 打赏
  • 举报
回复
round(值,2)

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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