简体   繁体   English

如何多次在临时表中插入值

[英]How to insert values in temp table on multiple times

I have this code. 我有这个代码。 Can I insert values into a temp table multiple times? 我可以多次将值插入临时表吗? I have list of ids (ie 1000 ids). 我有id列表(即1000个ID)。 I want to insert this by loop. 我想循环插入这个。

DECLARE @tempTable TABLE(col1 INT)

FOR (@ids IS NOT NULL) {
    INSERT INTO @tempTable VALUES(@ids)
}

SELECT * FROM @tempTable

Even though it is possible using WHILE loop I will suggest you to go with SET Based approach 尽管可以使用WHILE循环,但我建议您使用基于SET的方法

Why cant you just do this 为什么你不能这样做

INSERT INTO @tempTable (ID)
select Id from yourlist

SQL Server is not support FOR loop. SQL Server不支持FOR循环。 You need to use WHILE loop instead. 您需要使用WHILE循环。

SQL Server Looping SQL Server循环

You can use a while statement as said Jitendra Tiwari: 您可以使用while语句作为Jitendra Tiwari:

DECLARE @tempTable TABLE(col1 INT)

DECLARE @num int 
SET  @num = 1
WHILE @num <= 1000
BEGIN
    INSERT INTO @tempTable VALUES (@num) --(@ids)
    SET @num = @num + 1
END

SELECT * FROM @tempTable

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM