1

私はテーブルストックを持っています

StockID   ItemID   Quantity   Price

今、私はこのようなデータを選択したい

StockID   ItemID   Quantity Price   TotalPrice(Quantity*Price)

私はこれを試しました

ALTER PROC [dbo].[SelectItemStock] 
@Item   int
as
BEGIN
    SELECT  Stock.*, (SELECT Quantity*Price FROM Stock) AS TotalPrice
    FROM    Stock
    WHERE   ItemID = @Item
END

しかし、それは私にエラーを与えますSubquery returned more than 1 value.

この問題を解決するのを手伝ってください

4

1 に答える 1

7

2 つの列の積を取得するためにサブクエリを実行する必要はありません。直接乗算するだけです。

ALTER PROC [dbo].[SelectItemStock] 
@Item   int
as
BEGIN
    SELECT  Stock.*, 
            (Quantity*Price) AS TotalPrice
    FROM    Stock
    WHERE   ItemID = @Item
END
于 2013-03-01T07:38:33.767 に答える