sqlserver创建了一个视图 怎么给视图的其中一个字段定义类型
例如ccc=4casecccwhen0then0else(2/ccc*100)end这样求出来的是一个整数因为2/4应该等于0.5可是在sqlserver中把后面的.5给...
例如 ccc=4 case ccc when 0 then 0 else (2/ccc*100)end 这样求出来的是一个整数 因为2/4应该等于0.5 可是在sqlserver中 把后面的.5给丢掉了 怎么解决这个问题 我是想求他的百分比 我想得到的是50 这个怎么解决
展开
1个回答
2013-07-08
展开全部
case ccc when 0 then 0 else (2/ccc*100)end
修改为
case ccc when 0 then 0.0 else (2.0/ccc*100)end
修改为
case ccc when 0 then 0.0 else (2.0/ccc*100)end
追问
请问: 我的上面的 2 也是一个变量 该怎么改呢
追答
2 也是一个变量的话, 那就是
case ccc when 0 then 0.0 else (1.0 * 变量 /ccc*100) end
就可以了。
原因是: SQL 里面
整数 除 整数, 结果还是整数。
因此,解决办法是。 通过 1.0 * 整数, 使得结果不是整数。
最后就是 小数 / 整数, 结果就是小数了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询