将特定的有界数字插入SQL Server的列中

时间:2012-05-12 07:37:47

标签: sql sql-server-2008

我想编写一个SQL查询,它插入以特定数字(例如100)开头的增量数字,并以另一个特定数字(例如3000)结尾到SQL Server中的表的一列中,但我不这样做知道怎么做。

例如:
我想在categoryID(表格)

Category(列)中插入100到3000

非常感谢

2 个答案:

答案 0 :(得分:9)

DECLARE @id INT
SET @id = 100
WHILE (@id <= 300)
BEGIN
    insert into categories (categoryID) values (@id)
    SELECT @id = @id + 1
END

答案 1 :(得分:2)

同样的事情,但使用递归CTE:

DECLARE @i INT
DECLARE @n INT
SET @i = 100
SET @n = 3000
;WITH t(c) AS (
    SELECT @i
    UNION ALL
    SELECT c + 1 FROM t WHERE c < @n
)
INSERT INTO Categories(categoryID)
    SELECT c FROM t OPTION(MAXRECURSION 3000)