如题所述
用float [(p)] 参数p 定义精度 可要可不要
decimal(p,[s])p 同上 s可选参数 表标度 p 指定总的数字位数,s表小数点后的位数
根据具体需求 选择吧追问
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 这些都是不精确的计算用...
我看了你的需求 你需要在精确 甚至连整数的时候就必须整数形式显示,所以你需要写个自定义函数来实现了..
float 这些都是不精确的计算用...
我看了你的需求 你需要在精确 甚至连整数的时候就必须整数形式显示,所以你需要写个自定义函数来实现了..
第3个回答 2011-07-18
用int就可以
小数部分可以自己设定 几位小数
小数部分可以自己设定 几位小数