在sql server 数据类型中带有小数的并且有运算用什么数据类型最好。

如题所述

用float [(p)] 参数p 定义精度 可要可不要
decimal(p,[s])p 同上 s可选参数 表标度 p 指定总的数字位数,s表小数点后的位数
根据具体需求 选择吧追问

问一下float在计算的时候可能会导致小数点后有一大串数。而用decimal类型时它的末尾有固定的一串零,当整数的时候后面也有一串另零。我希望是当整数的时候没有小数点。

追答

那样你必须进行格式化 用cast (expression as int) 即可expression代表要格式化得字段 或表达式

追问

如果2.30000格一下是不是就变2了

追答

恩 但不会四舍五入,只是取整数部分

追问

那我实际需要时是非常精确的,不允许有出入的

追答

你到底要求它 还是浮点型 还是什么呀 ?不行的话只有在编程过程中判断再做处理了

追问

在SQL Server中无法实现,我通过.netwinfrom解决了 谢谢你了

追答

呵呵 解决就好

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-18
float或者decimal追问

问一下float在计算的时候可能会导致小数点后有一大串数。而用decimal类型时它的末尾有固定的一串零,当整数的时候后面也有一串另零。我希望是当整数的时候没有小数点。

追答

这个,好像没有。我猜测也不会有,因为如果真有,那么申明一个变量,定义变量的类型就没有什么意义了。愚见。

第2个回答  2011-07-18
decimal..这个是精确的
float 这些都是不精确的计算用...

我看了你的需求 你需要在精确 甚至连整数的时候就必须整数形式显示,所以你需要写个自定义函数来实现了..
第3个回答  2011-07-18
用int就可以

小数部分可以自己设定 几位小数

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网