2012-09-13 16 views
2

下面我有此查詢:SQL當結果有兩行輸出時,我該如何求和它們?

Select 
count(CDT) as Actions 
From Player_Tapjoy 
Where 
Trunc(CDT) >= To_Date('2012-sep-01','yyyy-mon-dd') 
And Trunc(CDT) < To_Date('2012-sep-12','yyyy-mon-dd') 
Union All 
Select 
Count(CDT) As Actions 
From Player_aux_pt 
Where 
Site = 'AppCircle' And 
Trunc(CDT) >= To_Date('2012-sep-01','yyyy-mon-dd') 
And Trunc(CDT) < To_Date('2012-sep-12','yyyy-mon-dd') 

這個輸出給了我兩行,每一個的選擇功能。我怎樣才能組合這些來獲得兩個選擇功能的總和?最重要的是,我如何按CDT(日期)對它進行分組?

+0

您是否想在每一行的總和,或你想在一個單獨的行總和? –

+0

@GordonLinoff我只想要兩行的總和,所以查詢結果將只有一行而不是兩行(兩個原始行的組合) – Americo

回答

1

我想你按日期查找這樣的事情,與分組:

select cdt, sum(actions) as actions_sum 
    from ( select trunc(cdt) as cdt, count(cdt) as actions 
       from player_tapjoy 
      where trunc(cdt) >= to_date('2012-sep-01', 'yyyy-mon-dd') and 
        trunc(cdt) < to_date('2012-sep-12', 'yyyy-mon-dd') 
      group by trunc(cdt) 
      union all 
      select trunc(cdt) as cdt, count(cdt) as actions 
       from player_aux_pt 
      where site = 'AppCircle' and 
        trunc(cdt) >= to_date('2012-sep-01', 'yyyy-mon-dd') and 
        trunc(cdt) < to_date('2012-sep-12', 'yyyy-mon-dd') 
      group by trunc(cdt)) 
group by cdt 
相關問題