2016-08-16 52 views
-1

我有這兩個查詢,我想在一個查詢中求和他們的結果,但union all不起作用。當結果是相同查詢中的總和和乘法時,從不同表中求和兩個字段

我使用此查詢:

select sum(a.value1) from myTable a 

,我得到:10,然後我用這個查詢

select b.value2*b.value3 from myTable b 

,我得到:10,我要總結他們,讓20,所以我用union:

select sum(a.value1) from myTable a 
union all 
select b.value2*b.value3 from myTable b 

但是查詢返回

10 
10 

我怎樣才能得到20

回答

0

你可以這樣做:

select ((select sum(a.value1) from myTable a) + 
     (select b.value2*b.value3 from myTable b) 
     ) as sum 
0

希望這有助於! 選擇(總和(a.value1)+(SELECT SUM(b.value2 * b.value3)從myTable的B)),如從測試myTable的一個

0

我finnaly可以使用此查詢:

select a.value4 + b.value5 
    from (select sum(a.value1) value4 from myTable) a, 
     (select b.value2 * b.value3 value5 from myTable) b 
相關問題