sql一条数据拆分为多条数据

u011092509 2013-06-16 08:58:33
比如:数据表结构为:
id username userCount
1 aa 2
2 a 1
3 aa 3

如何sql语句查询得到数据为:
id username userCount
1 aa 1
2 aa 1
3 a 1
4 aa 1
5 aa 1
6 aa 1
...全文
287 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
唐诗三百首 2013-06-16
  • 打赏
  • 举报
回复

create table u01
(id int, username varchar(5), userCount int)

insert into u01
 select 1, 'aa', 2 union all
 select 2, 'a', 1 union all
 select 3, 'aa', 3
 

create table #t
(id int not null identity(1,1),
 username varchar(5),
 userCount int
)

declare @id int,@username varchar(5),@userCount int,@i int

declare ap scroll cursor for
 select id,username,userCount from dbo.u01

open ap

fetch first from ap into @id,@username,@userCount
while(@@fetch_status<>-1)
begin
 select @i=1
 while(@i<=@userCount)
 begin
   insert into #t(username,userCount) values(@username,1)
   select @i=@i+1
 end
 fetch next from ap into @id,@username,@userCount
end

close ap
deallocate ap


-- 结果
select id,username,userCount from #t

/*
id          username userCount
----------- -------- -----------
1           aa       1
2           aa       1
3           a        1
4           aa       1
5           aa       1
6           aa       1

(6 row(s) affected)
*/
u011092509 2013-06-16
  • 打赏
  • 举报
回复
求解?大家回复?

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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