使用下面的代码制作一个包含一列的表格:
1 2 3 4 5 6 7
CREATE TABLE abc (a VARCHAR(8));
INSERT INTO abc VALUES(1),(2),(3),(4),(5),(6),(7)
但是我们如何使用 using (1),(2),(3),(4),(5),(6),(7) 的方法,我的意思是仅像 1:7 这样的方法?
使用下面的代码制作一个包含一列的表格:
1 2 3 4 5 6 7
CREATE TABLE abc (a VARCHAR(8));
INSERT INTO abc VALUES(1),(2),(3),(4),(5),(6),(7)
但是我们如何使用 using (1),(2),(3),(4),(5),(6),(7) 的方法,我的意思是仅像 1:7 这样的方法?
有人说递归吗??
with rec as (
select 1 i
union all
select i+1 from rec where i < 7
)
select * from rec
如果我没记错的话,您正在寻找一种在单批次中插入一组 INT 值的方法。例如“在 A 列中插入 100 个身份”。没有预定义的 SQL SERVER 函数。但是您可以使用任何您确定将具有足够数量的行的系统表来解决问题。
SELECT rownum
FROM
(
SELECT name,ROW_NUMBER() OVER (ORDER BY name) rownum
FROM sysobjects so
)q
WHERE rownum <= 7