SqlServer中除法的问题

来源:互联网 发布:软件开发与设计培训 编辑:程序博客网 时间:2024/05/20 15:24

首先先计算两个小问题:

1.select (11+0-7)/97

2.select cast((11+0-7)/97 as decimal(10,4))

这两者的结果是什么?


答案为:0和0.0000


原因:在SqlServer中int除以int结果就为int。第二个转换也是无效的。

解决方法:将分子或者分母设置为decimal类型即可。

like this:select (11+0-7)/97.0  或者 select (11+0-7)/cast(97 as decimal)


以上!




0 0