2016-03-21 11 views
-1

私の手続きで2つのテーブルから 'salevalue'を合計/減算したいとします。セール1には領収書、2番目には返品があります。しかし、私はアイデアで迷っています。TSQL - 2つのテーブルの合計を取得または差し引く

SELECT * 
    FROM @possale1 

    SELECT * 
    FROM @possale2 

    SELECT sum(salevalue) AS S1 
    FROM @possale1 

    SELECT sum(salevalue)*-1 AS S2 
    FROM @possale2 

    select sum(sum(a.salevalue)-sum(b.salevalue)) 
    from @possale1 a 
    inner join @possale2 b on a.receiptdate=b.receiptdate 
+1

は「私はアイデアで失われていますが、」本当に答えることができる問題ではありません。あなたの推論を明確にしてください。たぶん、あなたの考えを書き留めることによって、あなた自身が正解に到着するかもしれません。 – Jolta

+0

私はそれをより正確にしませんでした。 私はOpenQuery経由でOracleからの領収書と返品を2つの別々のテーブルに挿入するストアドプロシージャを持っています。 今、私はテーブルからのものを差し引きたい(領収書 - 返品=残高)。 Arvoが私の質問に答え、それは魅力のように機能します。 – headder

答えて

1

select ((SELECT sum(salevalue) FROM @possale1) - (SELECT sum(salevalue) FROM @possale2)) as balance 
+0

ありがとうございました、それは私に必要な余分なものを与えました。 – headder

0

あなたはこれを試していますか?次に何をすべき凝集することなく

SELECT SUM(ISNULL(a.salevalue,0) - ISNULL(b.salevalue,0)) 
FROM @possale1 a FULL OUTER JOIN @possale2 b on a.receiptdate=b.receiptdate 
+0

これは、両方のテーブルが各日付に対して正確に1行しかない場合にのみ機能します。 – jumxozizi

関連する問題