将行插入到具有一列且仅有一列的临时表中

时间:2017-04-05 11:46:44

标签: sql sql-server

我有一个临时表,其中只有一列名为Id。如何使用最小的查询在此表中插入100行?

CREATE TABLE #Sample (
    id INT IDENTITY(1,1)

3 个答案:

答案 0 :(得分:1)

这很棘手。蛮力方法是关闭身份插入:

set identity_insert #Sample on;

with n as (
      select 1 as n union all
      select n + 1
      from n
      where n + 1 <= 100
     )
insert into #Sample(id)
    select n.n
    from n;

set identity_insert #Sample off;

答案 1 :(得分:0)

declare @i int = 1

while(@i<=100)
begin
insert into #Sample default values
set @i=@i+1
end

select * from #Sample

答案 2 :(得分:0)

您可以使用默认值并使用批处理分隔符执行插入100次

insert into #sample
default values
go 100