我有一张桌子,我想在同一张桌子内复制/克隆记录。但是我想有条件地做到这一点。而且条件是我有一列名为recordcount的数值。例如,第1行可以采用recordcount的值,例如7,那么我希望将第1行复制7次。第2行可以采用说9的值,那么我希望将第2行复制9次。 任何帮助表示赞赏。谢谢
答案 0 :(得分:0)
您可以做什么(我很确定这不是最佳实践),
用于保存仅包含数字的表,该表具有与数字值对应的行数。
将其与您的表一起加入,并仅投影您的表。
示例:
create table nums(x int);
insert into nums select 1;
insert into nums select 2;
insert into nums select 2;
insert into nums select 3;
insert into nums select 3;
insert into nums select 3;
create table t (txt varchar(10) , recordcount int);
insert into t select 'A',1;
insert into t select 'B',2;
insert into t select 'C',3;
select t.*
from t
inner join nums
on t.recordcount = nums.x
order by 1
;
将项目:
"A",1
"B",2
"B",2
"C",3
"C",3
"C",3