CREATE PROCEDURE M_SelectStockIN @FarmID int,
@ItemName varchar(50),
@InType varchar(5)
AS
BEGIN
select ( Sum(( m.Item_Qty )) - total ) As InStock,
*
from (select Sum(d.Use_Qty) as total
from MoryaSales m
inner join DailyFarmEntry d
on m.batchID = d.FarmID
where m.batchID = @FarmID
and d.FarmID = @FarmID
and m.Tr_Type = @InType
and d.In_Type = @InType
and m.Item_Name = @ItemName
and d.ItemName = @ItemName)
END
RETURN
我需要帮助来修复该错误: 当我们运行上述存储过程时,错误" 语法不正确"出现在关键字 end
附近
这可能有助于:
删除RETURN
并在内部查询上放置别名:
CREATE PROCEDURE M_SelectStockIN
@FarmID int,
@ItemName varchar(50),
@InType varchar(5)
AS
BEGIN
select
(sum((m.Item_Qty)) - total) As InStock,
*
from( -- marks the start of the inner query
select
sum(d.Use_Qty) as total
from MoryaSales m
inner join DailyFarmEntry d
on m.batchID = d.FarmID
where
m.batchID = @FarmID
and d.FarmID = @FarmID
and m.Tr_Type = @InType
and d.In_Type = @InType
and m.Item_Name = @ItemName
and d.ItemName = @ItemName
)t -- You need to put an alias for this inner query to prevent the error from happening.
END
您缺少表的别名并删除返回
select (sum((m.Item_Qty)) - total) As InStock,* from
(select sum(d.Use_Qty) as total from MoryaSales m
inner join DailyFarmEntry d on m.batchID = d.FarmID
where m.batchID = @FarmID and d.FarmID = @FarmID
and m.Tr_Type = @InType and d.In_Type = @InType
and m.Item_Name = @ItemName and d.ItemName = @ItemName)d
^