间隔相同的行数插入一个相同的数据,如何实现,各位高手帮帮忙!!!

lovebirdwu 2004-12-27 04:29:21
一张表(T1)只有一个字段,现在要实现每隔1000行插入一个相同的数据,请问如何实现,谢谢!!
...全文
198 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
iswear428 2004-12-27
  • 打赏
  • 举报
回复
--定义临时表变量,用于保存中间数据,假设数据类型为varchar(512)
declare @t table(value varchar(512))
--定义游标,用于读取原表数据
declare myCursor for select * from T1
--定义变量,用于保存操作记录个数
declare @i int
set @i=0

--用游标对数据进行读取,如果个数达到1000的整数倍,则插入数据值
OPEN myCursor

FETCH NEXT FROM myCursor
WHILE @@FETCH_STATUS = 0
BEGIN
set @i = @i+1
if(@i%1000=0)
begin
insert into @t values(要插入的值)
end
FETCH NEXT FROM myCursor
END
--关闭游标
CLOSE myCursor
DEALLOCATE myCursor

--把数据从临时表重新导入到表T1

truncate table T1
INSERT INTO T1
SELECT * FROM @t
klan 2004-12-27
  • 打赏
  • 举报
回复
在T1表里面加一个新的字段,identity(1,1),在insert前面,先判断计数,如果达到1000就添加一条相同的数据
imhere_l 2004-12-27
  • 打赏
  • 举报
回复
建一临时表,加一个标志字段(identity(1,1))用于排序、计数。

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧