2017-10-05 81 views
0

在我目前的結果是下面幾行:SQL聯盟/合併兩行DB2

item|val1|val2 
9999|0 |50 
9999|50 |0 

我怎樣才能將它們合併:

9999|50 |50 

我不能基於項目做子查詢,結果每個查詢都提供項目

SQL:############################################ 
select item, sum(val1), 0 as dummy from itemdata 
union 
select item, 0 as dummy, sum(val2) from itemdata2 

回答

1

列表只需使用:

SELECT item, sum(val1), sum(val2) 
FROM table 
GROUP BY item; 

如果您正在使用多個表:

SELECT item, sum(val1), sum(val2) 
FROM (SELECT item, val1, 0 AS val2 FROM itemdata 
     UNION ALL 
     SELECT item, 0, val2 FROM itemdata2) sub 
GROUP BY item; 
+0

對不起,我忘了,在SQL是在不同的表,我已經改變了上述 – user982998

+0

@ user982998當然,檢查我的編輯 – lad2025

+0

@ user982998你可以接受我的答案([如何接受答案的工作?](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235))如果你的問題已經解決:) – lad2025