日期:2014-05-18  浏览次数:20397 次

请问如何将一个表中的数据循环插入5000次啊?
请问我有一个表共10个字段共53行数据,我要将里面的第1,2,3,4,列的数据分别插入到另一个表中5000次,如果写这个sql语句啊?

------解决方案--------------------
for循环5000次,insert
------解决方案--------------------
for(int i = 0;i<100;i++)
{
for(int j=0;j<50;j++)
{
//插入
}
}
------解决方案--------------------
探讨

不是,我将每一行的数据插入从第一条到最后一条后才插入了50调数据,然后再才从新开始,再插入,直到5000次。

谁能给我一个源码?

------解决方案--------------------
SQL code

declare @i int=0
while (@i<5000) begin
    insert into tb_2(c1,c2,c3,c4)
    select c1,c2,c3,c4
    from tb_1
    
    set @i += 1
end

------解决方案--------------------
+1
探讨

SQL code

declare @i int=0
while (@i<5000) begin
insert into tb_2(c1,c2,c3,c4)
select c1,c2,c3,c4
from tb_1

set @i += 1
end

------解决方案--------------------
探讨

引用:
指定哪一行加where条件啊


我要从第一行开始,然后从逐行插入,共50行,要插入5000次

------解决方案--------------------
SQL code
declare @i int=0
while (@i<5000) begin
    insert into tb_2(c1,c2,c3,c4)
    select c1,c2,c3,c4
    from tb_1
    
    set @i += 1
end

------解决方案--------------------
探讨
比如我第一行开始插入,我如何取得第一行呢?

然后是第二行? 不能只用top吧?

------解决方案--------------------
探讨

order by只是一个排序啊,我怎么也要从第一条开始按顺序插入啊?

------解决方案--------------------
探讨

SQL code

create table #table1
(
QYGM varchar(100),
QZHGY varchar(100),
CHYFL varchar(100),
SYZH varchar(100),
HYFL varchar(100),
GLJC varchar(100),
XZHQH varchar(100),
ID varchar(100),
NM varchar(1……

------解决方案--------------------
你直接先查询出结果集,然后排序,然后在遍历插入啊。。。
别在执着啊。。
declare @i int=0
while (@i<5000) begin
insert into tb_2(c1,c2,c3,c4)
select c1,c2,c3,c4
from tb_1
order by ??

set @i += 1
end


------解决方案--------------------
插入5000次。。少侠好功夫啊。
------解决方案--------------------
探讨
我不明白

------解决方案--------------------
探讨
这样说吧,我如何取到第一次数据,第二条数据,第三条数据,第四条数据,一次类推,这个语句怎么写?