如何使用Oracle SQL中特定公式的代码计算值?
我有Oracle SQL查询。 结果我得到了这样的结果:如何使用Oracle SQL中特定公式的代码计算值?,sql,oracle,Sql,Oracle,我有Oracle SQL查询。 结果我得到了这样的结果: CODE || VALUE I || 10 II || 30 III || 50 IV || -20 V || 60 VII || -45 VIII || 0 IX || 100 X || 0 接下来,我想为CODE=X创建如下公式: 案例1: SUM OF I,II,III,IV,V,IX 案例2: I+II+III-IV-V+IX 如何在sql查询中实现这些公式?您可以使用聚合: select sum(case when cod
CODE || VALUE
I || 10
II || 30
III || 50
IV || -20
V || 60
VII || -45
VIII || 0
IX || 100
X || 0
接下来,我想为CODE=X创建如下公式:
案例1:
SUM OF I,II,III,IV,V,IX
案例2:
I+II+III-IV-V+IX
如何在sql查询中实现这些公式?您可以使用聚合:
select sum(case when code in ('I', 'II', 'III', 'IV', 'V', 'IX') then value else 0 end) as case1,
sum(case when code in ('I', 'II', 'III', 'IX') then value
when code in ('IV', 'V') then -value
else 0
end) as case2
from t;
只是通过union实现上述功能的不同方式
select sum(value) from table where code not like 'VI%'
Union
select sum(case when code in ('IV', 'V' ) then -value
else value end case) from table where code not like
'VI%'