社区
Web 开发
帖子详情
十萬火急,SQl Server四舍五入的問題
mklv
2007-08-28 11:37:13
我從SQL Server里取了數據50和0.3999,可是乘出來的結果確實19.994999,我保留2位小數,就成了19.99,但實際結果應該是19.995,四舍五入就是20.00啊?這是怎麼回事?那位高手幫忙解決,十萬火急
...全文
447
6
打赏
收藏
十萬火急,SQl Server四舍五入的問題
我從SQL Server里取了數據50和0.3999,可是乘出來的結果確實19.994999,我保留2位小數,就成了19.99,但實際結果應該是19.995,四舍五入就是20.00啊?這是怎麼回事?那位高手幫忙解決,十萬火急
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
livan1038
2007-08-28
打赏
举报
回复
select LTRIM(RTRIM(STR(ROUND(50*0.3999, 2),15,2)))
mklv
2007-08-28
打赏
举报
回复
我都用BigDecimal.ROUND_HALF_DOWN做了四舍五入的處理,可是還不行.急!!
IhaveGotYou
2007-08-28
打赏
举报
回复
口算就很方便:( 0.3999/2*100 把小数相乘除变为整数相乘除.
double d=0.3999d;d=d*10000;d=d/200;
mklv
2007-08-28
打赏
举报
回复
先把0.3999四舍五入的話,算的結果就完全不一樣了
用select LTRIM(RTRIM(STR(ROUND(50*0.3999, 2),15,2)))也不行,因為我這些數據都是從SQLSERVER中調出來的,只能用變量來表示,算出來的結果還是一樣
平生我自如
2007-08-28
打赏
举报
回复
是用round方法吧
我知道oracle里的四舍五入是用round()方法
yztommyhc
2007-08-28
打赏
举报
回复
原因是计算机里面的2进制数不能表示所有的小数,2进制的数是有限的,而小数是无限多的。
如果你是保存2位小数的话,你看能不能在计算之前对0.3999四舍五入。
一次
SQL
SERVER
2008无法使用的修复
在一个测试服务器上安装了
SQL
SERVER
2008,后来在此服务器想再安装一个
SQL
SERVER
2000时,一个不小心,使用了默认的实例,把
SQL
SERVER
2008的服务器替换了,导致
SQL
SERVER
2...
9003错误,
sql
server
无法启动,HELP!!!十万
火急
~~~!!http://topic.csdn.net/t/20060708/09/4867769.html
zhh007(gogogo...upupup,aZaZaZa...........)2006-07-08 09:05:33 在 MS-
SQL
Server
/ 疑难问题 提问//错误事件 18052: 错误: 9003,严重度: 20,状态: 1。 //手动启动MS
SQL
SERVER
服务时出现以下信息 在本地计算机无法启动MS
SQL
SERVER
服
求助VB和
SQL
SERVER
的问题
请各位大侠帮帮我这个新手,我现在第一次做一个收费管理系统中的资产管理部分,其中有一块是资产字典管理,主要功能是输入资产名称就显示如编号,价格等信息.我没有用ADO控件做用的是TEXTBOX来输入和显示.主要一个问题是怎样连接到数据库,读取数据库的信息.我用的是VB和
SQL
SERVER
.请各位一定要帮我呀,十万
火急
!!!谢谢了.
MS-
SQL
Server
基础类 -
SQL
语句
基础类 -
SQL
语句
基础类 -
SQL
语句
转载请标明出处: http://blog.csdn.net/hz/archive/2006/03/01/613376.asp 本文来自 CSDN 博客。x
sql
server
怎么跨库查询?
如何判断字符的大小写 ?
如何得到动态
SQL
中取得的值 ?
如何定义动态游标 ?
已知:当前时间 ( 截取 yyyy-mm 目标 1 查询进销存表当中距离当前时间连续 3 个月内进货数量 =0...<
Web 开发
81,094
社区成员
341,711
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章