我有一个名为 fnc_FiderSumOfAboneSayisi 的函数,可以使用参数 @prm_fiderid 发送一个整数值。所以我有一个名为 fider_data 的表,其中包含ID列。 现在我想将fider_data ID列值作为参数发送到我的fnc_FiderSumOfAboneSayisi函数作为循环。
我该怎么办?
---------- FUNCTION
将函数fnc_FiderSumOfAboneSayisi @prm_fiderid更改为int
返回int
作为
开始
声明@parent int = @prm_fiderid;
声明@SUM int;
与q As(
select * from fider_data where ParentId = @parent union all select lc.* from q join fider_data lc on lc.ParentId = q.ID )
SELECT @ SUM =(SELECT sum(SAYI)FROM q其中ID <33000)返回@SUM
端
---------- TABLE fider_data
ADI ID
TM 1 1
TM 2 2
TM 3 3
TM 4 4
TM 5 5
TM 6 6
TM 7 7
TM 8 8
TM 9 9
答案 0 :(得分:0)
DECLARE @id INT
SET @id = (SELECT TOP 1.ID FROM fider_data ORDER BY ID ASC)
WHILE @id IS NOT NULL
BEGIN
SELECT fnc_FiderSumOfAboneSayisi @prm_fiderid = @id
SET @id = (SELECT TOP 1.ID FROM fider_data WHERE ID > @id ORDER BY ID ASC)
END