Sql 如何添加来自不同字段的数量

Sql 如何添加来自不同字段的数量,sql,sql-server-2008-r2,Sql,Sql Server 2008 R2,我正在尝试从数据库中获取数量字段的总和 数据库设置为这样 jobno raw1 qty1 raw2 qty2 raw3 qty3 raw4 qty4 234 a 3 b 2 a 3 c 1 有没有一种方法可以不询问4次就说出来 select sum(qty1) from jtjobfil where raw1 = 'a' select sum(qty2) from jtjobfil where raw2 = 'a'

我正在尝试从数据库中获取数量字段的总和

数据库设置为这样

jobno  raw1 qty1  raw2  qty2   raw3  qty3  raw4 qty4
  234    a     3    b      2      a     3     c    1
有没有一种方法可以不询问4次就说出来

select sum(qty1) from jtjobfil where raw1 = 'a'
select sum(qty2) from jtjobfil where raw2 = 'a'
select sum(qty3) from jtjobfil where raw3 = 'a'
select sum(qty4) from jtjobfil where raw4 = 'a'

可能不是一个改进,但这是一个查询

select sum(case when raw1 = 'a' then qty1 else 0 end + 
    case when raw2 = 'a' then qty2 else 0 end +
    case when raw3 = 'a' then qty3 else 0 end +
    case when raw4 = 'a' then qty4 else 0 end) as sumqty
from jtjobfil
我认为桌子应该重新设计成“垂直的”