我有一个包含多列的表
Code Events Time AVG
A 1 1 1
B 2 2 1
C 10 5 2
我需要对事件和总行进行求和,但是当涉及到特定代码(B和C)时,我需要将事件除以二,然后将该数字包括在总和中。
所以上面的输出将是
TotalEvents TotalTime
7 4.5
事件总数= 1 +(2/2)+(10/2)= 7
总时间= 1+(2/2)+(5/2)= 4.5
感谢您的协助。 谢谢
答案 0 :(得分:1)
这是您想要的吗?
select sum(case when code in ('B', 'C') then events / 2.0 else events end) as total_events,
sum(case when code in ('B', 'C') then time / 2.0 else time end) as total_time
from t;