已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。
3天前关闭。
Improve this question
我有下面的代码,我试图取代光标,我想迭代通过每个文件ID一个接一个,并分配该单一文件ID的输出每次给变量@fil,但它打印所有迭代的一切。探索了许多论坛,但无法找到解决方案。我知道光标的解决方案,但这对我来说是新的!
DECLARE @i INT = 0;
DECLARE @count INT, @fil varchar(100)
SELECT @count= COUNT(DISTINCT m.FileID)
FROM [EDW].[FileMaster] m
WHILE @i <= @count
BEGIN
@filid = SELECT DISTINCT m.FileID
FROM [EDW].[FileMaster] m
--OFFSET @i ROWS
--FETCH NEXT 1 ROWS ONLY
SET @i = @i + 1;
print @fileid
END
预期输出为abc.txt def.txt ghi.txt etc
请帮帮我!先谢了。
1条答案
按热度按时间uurv41yg1#
您可以尝试这样做,但您忽略了SQL的全部要点...
您可以创建一个具有不同FileID的临时表一次,然后循环使用它