各位道友..
DECLARE @round INT
SELECT @round = 10
WHILE @round > 0
BEGIN
SELECT
*
FROM
t_project p
WHERE
p.id = 1263
SET @round = @round - 1 ;
--问题出在这里
IF @round != 1
BEGIN
UNION ALL
END
END
请问我如何才能判断如果round不等于1则在sql下面加入UNION ALL这个标签,否则不加入。
现在报错:[Err] 42000 - [SQL Server]关键字 'UNION' 附近有语法错误。
------解决思路----------------------
SQL語句用變量
------解决思路----------------------
应该用动态SQL实现,
------解决思路----------------------
楼主的示例完全不能体现楼主要干嘛, 要 UNION 1-10吗, 应该有更好的解决办法.
------解决思路----------------------
如果要按你原本的想法,只有用动态执行,不过感觉你的业务需要可以有别的方式实现。