SQL CASE语句无法正常工作

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.我做错了什么?

sha*_*esh 8

BringBacksAttempted和BringBacks的数据类型是什么?
如果两者都是int并且结果变为分数,则只能看到它的整数部分.

例如100/250 将返回0.
然而,CAST(100 as Decimal) / 250将返回0.40000

在其中一个字段上使用CAST或CONVERT.