在Sql Stored过程中将两列相乘

Ahm*_*asi 1 sql sql-server asp.net stored-procedures

我有一个表股票

StockID   ItemID   Quantity   Price
Run Code Online (Sandbox Code Playgroud)

现在我想选择一些像这样的数据

StockID   ItemID   Quantity Price   TotalPrice(Quantity*Price)
Run Code Online (Sandbox Code Playgroud)

我试过这个

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

但它给了我错误 Subquery returned more than 1 value.

请帮我解决这个问题

Joh*_*Woo 7

你不需要做一个子查询来获得两列的乘积,只需直接乘以它,

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