我正在使用3个表tblproduct
,tblstock
和tblwinkel
。
productid
表格中有外键{{1}}和winkelid
。
tblstock
表也有一个字段tblstock
,这是一个整数。
我只希望拥有2条外键stock
和winkelid
的相同组合的1条记录。此记录的股票值包含具有productid
和winkelid
的相同外键组合的所有其他记录的总和。
所以,我正在尝试删除其中包含相同2个外键的所有其他记录,所以我只保留1个。
我的存储过程一直出现以下错误:
Msg 155,Level 15,State 2,Procedure uspRecordsSamenvoegen,Line 11 'int'不是公认的CURSOR选项。
请帮忙吗?
到目前为止,这是我的存储过程:
productid
答案 0 :(得分:2)
declare stocktotaal int
需要
declare @stocktotaal int
如果没有'@'来声明变量,sql解析器就会设置一个游标。此外,您无法选择变量。您的选择应如下所示:
select @stocktotaal = sum(stock) from ...
答案 1 :(得分:0)
所以你的结果将被捕获:
select WinkelId, ProductId, sum(Stock) as stocktotaal
from TblStock
group by WinkelId, ProductId