例如 ccc=4 case ccc when 0 then 0 else (2/ccc*100)end 这样求出来的是一个整数 因为2/4应该等于0.5 可是在sqlserver中 把后面的.5给丢掉了 怎么解决这个问题 我是想求他的百分比 我想得到的是50 这个怎么解决
请问: 我的上面的 2 也是一个变量 该怎么改呢
追答2 也是一个变量的话, 那就是
case ccc when 0 then 0.0 else (1.0 * 变量 /ccc*100) end
就可以了。
原因是: SQL 里面
整数 除 整数, 结果还是整数。
因此,解决办法是。 通过 1.0 * 整数, 使得结果不是整数。
最后就是 小数 / 整数, 结果就是小数了。