select
ab,
case when ab <> 0
then str(CAST(sum(singleHit) AS float) / CAST(sum(ab) AS float) ,5,3 )
else str(.000)
end as BA
from gameLineup
当我不使用总和时,它会撤回正确的那些,但如果我这样做,我会在选择列表中使'ab'无效,因为它不包含在聚合函数或GROUP BY子句中< / p>
我不想用ab。
对它们进行分组谢谢,
答案 0 :(得分:0)
从列列表中删除ab
并检查案例表达式中的sum(ab)
。
select
str(case when sum(ab) = 0
then 0.0
else 1.0 * sum(singleHit) / sum(ab)
end, 5, 3) as ba
from gameLineup