1

次のように2つのテーブルがあります:-

           Table 1                      Table 2 
         date     value             date     value 
         1120101   v11              1120102   v21
         1120202   v12              1120303   v22  
         1120203   v13              1120104   v23  

次の出力を取得するためのSQLクエリは何ですか

        date         value 
       1120101       (v11)
       1120102       (v12+v21)
       1120103       (v13+v22)
       1120104       ( v23)  

クエリをたどるのにうんざりしましたが、必要な出力が得られませんでした

select table1.date,
       table2.date,
       table1.delta+table2.delta as delta 
from table1,
     table2   
where table1.date=table2.date;

前もって感謝します 。

4

2 に答える 2

6
SELECT date, SUM(value)
FROM
(
    SELECT date, value FROM table1
    UNION ALL
    SELECT date, value FROM table2
) a
GROUP BY date
于 2012-11-27T05:48:37.613 に答える
2

サブクエリとユニオンで遊ぶ:

SELECT
    c.date,
    COALESCE(a.value, 0) + COALESCE(z.value,0)
FROM (
    SELECT
        date
    FROM table1
    UNION
        SELECT date
    FROM table2
) AS c
LEFT OUTER JOIN table1 a
    ON a.date = c.date
LEFT OUTER JOIN table2 z
    ON z.date = c.date
于 2012-11-27T05:52:37.137 に答える