2016-11-29 7 views
1

まず、私が何か尋ねるのは私の前の時間なので、何かが間違っていると言ったら残念です。私はSQL Serverの新機能ですので、自分自身を見つけようとしましたが、私はこれが私がここにいるように私を助けるかもしれない何かを見つけませんでした。私が追加またはTypeID = 1(Entry) or 2(Subtract) from tbl_Entry_Exit場合tbl_Productから量を減算したい3番目のテーブルに基づいて2つの異なるテーブルから数量を加算または減算する方法は?

1.tbl_Product with ID, Quantity and others; 
2.tbl_Type with ID, Name; 
3.tbl_Entry_Exit with ID,TypeID,ProductID,Quantity,Price,Total. 

:私は3種類のテーブルを持っています。 ありがとうございます!

+2

は、実際にあなたを行いますtbl_Productを更新して値を永続的に保存したいか、単にこの結果をクエリに戻したいのですか? –

+0

はい私はそれを永久に更新したいと思います。 –

答えて

2
UPDATE TP 
    SET TP.Quantity = TP.Quantity+ TE.Quantity 
    FROM tbl_Product TP inner join tbl_Entry_Exit TE 
    on TP.ID=TE.ProductID 
WHERE TE.TypeID=1 

UPDATE TP 
    SET TP.Quantity = TP.Quantity- TE.Quantity 
    FROM tbl_Product TP inner join tbl_Entry_Exit TE 
    on TP.ID=TE.ProductID 
WHERE TE.TypeID=2 

希望...

+0

はい、動作します。ありがとうございました! –

+0

あなたが好きかもしれません:) – Engineer

+0

しかし、もし私が尋ねることがありますあなたはアプリケーションからこのデータベースを自動的に更新することが可能かどうか知っていますか?私はこれを自動的に行う必要があるmvcアプリケーションを持っています。どんなアドバイスも本当に辛口です。 –

0

ない正しい結果についてのOPが望んでいるが、以下のクエリは、いくつかの目的を果たすと確信 - この仕事やいくつかの変更が必要になります

SELECT CASE WHEN E.TypeID = 1 THEN (P.Quantity + E.Quantity) 
       WHEN E.TypeID = 2 THEN (P.Quantity - E.Quantity)       
      END AS DerivedQuantity 
    FROM tbl_Product P INNER JOIN tbl_Entry_Exit E 
    ON P.ID = E.ID 
+0

私はそれを試しましたが、それは正しいことをしません。とにかくありがとう! –

関連する問題