日期:2014-05-17  浏览次数:20517 次

菜鸟请教:求一个SQL语句

表A结构如下:
ID  sID  Name   Fee     IO 
1   s1   运费    1500   应收
2   s1   劳务费  1200   应收
3   s1   报关费  800    应付
4   s1   业务费  500    应付
5   s2   邮费    300    应付
6   s3   邮费    400    应付
……………………

想要把sID相同的数据进行费用合计,得到如下结果:

sID  feeI   feeO
s1   2700   1300
s2   0      300
…………

请问SQL语句怎么写?
 

------解决方案--------------------

SELECT SID
,SUM(CASE WHEN IO='应收' THEN Fee ELSE 0 END feeI   
,SUM(CASE WHEN IO='应收' THEN 0 ELSE fee END feeO
FROM 表A
GROUP BY SID

------解决方案--------------------

--糾正如下:
SELECT SID
,SUM(CASE WHEN IO='应收' THEN Fee ELSE 0 END) feeI   
,SUM(CASE WHEN IO='应收' THEN 0 ELSE fee END) feeO
FROM 表A
GROUP BY SID