2016-04-09 91 views
0

我有一個表:如何在同一張表上使用union查詢和mysql中的sum(value)?

OC Period(MM/YYYY) Ing 
CHO 04/01/2016  100 
CHO 04/01/2016  200 
CHO 04/01/2016  0 
CFE 04/01/2016  400 
CFE 04/01/2016  350 
CFE 04/01/2016  0 

我有一個SQL查詢是這樣的:

(SELECT OC,Ing FROM contacts c where ing > 0) 
    UNION ALL 
    (SELECT OC,Sum(Ing) FROM contacts c where ing = 0 Group by OC) 

我希望得到這樣的結果:

Ref Period(MM/YYYY) Ing 
CHO 04/01/2016  100 
CHO 04/01/2016  200 
CHO 04/01/2016  300 
CFE 04/01/2016  400 
CFE 04/01/2016  350 
CFE 04/01/2016  750 
+0

你確定你想要的輸出是正確的嗎? –

+0

謝謝。但我想得到一個結果:總和(英格)與組由OC –

+0

我打賭,我忘記查詢條件 –

回答

0
(SELECT c.OC, c.Period, c.Ing FROM contacts c where c.ing > 0) 
UNION ALL 
(SELECT c.OC, c.Period, Sum(c.Ing) AS Ing FROM contacts c Group by c.OC, c.Period) 

你可以如果您需要對輸出進行排序,請將其包含在另一個select from聲明中