求一条SQL重复分组显示有关问题
求一条SQL重复分组显示问题
T1
组号 名称 规格 重复数
1 A1 1 2
1 A2 1 2
2 B1 1 3
2 B2 1 3
....
结果
重复序号 组号 名称 规格 重复数
1 1 A1 1 2
1 1 A2 1 2
2 1 A1 1 2
2 1 A2 1 2
1 2 B1 1 3
1 2 B2 1 3
2 2 B1 1 3
2 2 B2 1 3
3 2 B1 1 3
3 2 B2 1 3
根据记录后的重复数把记录重复相应的数量,并通过重复序号显示出第几次重复
谢谢
------解决方案--------------------
这样吗:
T1
组号 名称 规格 重复数
1 A1 1 2
1 A2 1 2
2 B1 1 3
2 B2 1 3
....
结果
重复序号 组号 名称 规格 重复数
1 1 A1 1 2
1 1 A2 1 2
2 1 A1 1 2
2 1 A2 1 2
1 2 B1 1 3
1 2 B2 1 3
2 2 B1 1 3
2 2 B2 1 3
3 2 B1 1 3
3 2 B2 1 3
根据记录后的重复数把记录重复相应的数量,并通过重复序号显示出第几次重复
谢谢
------解决方案--------------------
这样吗:
create table t1(组号 int, 名称 varchar(10),规格 int,重复数 int)
insert into t1
select 1 ,'A1', 1, 2 union all
select 1 ,'A2', 1, 2 union all
select 2 ,'B1', 1, 3 union all
select 2 ,'B2', 1, 3
go
select t.number 重复序号,t1.*
from t1,master..spt_values t
where t1.重复数 >= t.number
and t.type = 'P'
and t.number > 0
/*
重复序号 组号 名称 规格 重复数
1 1 A1 1 2
2 1 A1 1 2
1 1 A2 1 2
2 1 A2 1 2
1 2 B1 1 3
2 2 B1 1 3
3 2 B1 1 3
1 2 B2 1 3
2 2 B2 1 3
3 2 B2 1 3
*/