Jar*_*red 1 sql t-sql sql-server sql-server-2008
我在SQL Server 2008中有一个视图,其中有几列是一列的表达式除以另一列.我必须考虑除数为0,所以我使用CASE语句.这是一个例子:
CASE SUM(dbo.GameStats.BringBacksAttempted)
WHEN 0 THEN
0
ELSE
SUM(dbo.GameStats.BringBacks) / SUM(dbo.GameStats.BringBacksAttempted)
END
Run Code Online (Sandbox Code Playgroud)
即使SUM(BringBacksAttempted)和SUM(BringBacks)不为0,语句也始终为0.我做错了什么?
BringBacksAttempted和BringBacks的数据类型是什么?
如果两者都是int并且结果变为分数,则只能看到它的整数部分.
例如100/250 将返回0.
然而,CAST(100 as Decimal) / 250
将返回0.40000
在其中一个字段上使用CAST或CONVERT.
归档时间: |
|
查看次数: |
966 次 |
最近记录: |