月に基づいて分割したいレコードが 1 つあります。分割を行っているとき、すべてのデータをそのままコピーしようとしていますが、FromMonth フィールドを段階的に変更することにのみ関心があります。
たとえば、
Record to be split:
c1 c2 c3 c4 FromMonth ToMonth Y
---------------------------------------
AA BB CC DD Feb Dec 2013
Resultant Records:
1.)
c1 c2 c3 c4 FromMonth ToMonth Y
---------------------------------------
AA BB CC DD Mar Dec 2013
2.)
c1 c2 c3 c4 FromMonth ToMonth Y
---------------------------------------
AA BB CC DD Apr Dec 2013
3.)
c1 c2 c3 c4 FromMonth ToMonth Y
---------------------------------------
AA BB CC DD May Dec 2013
.
.
.
.
それについての提案や方法は役に立ちます。
これが私がやったことです、私は新しいです、そして私はただ学ぶことについてです:
DECLARE @FromMonth Int;
DECLARE @ToMonth Int;
DECLARE @Result int;
DECLARE @C1 int;
DECLARE @C2 int;
DECLARE @C3 int;
DECLARE @C4 decimal(20,8);
DECLARE @C5 uniqueidentifier;
DECLARE @C6 varchar(1000);
DECLARE @C7 int;
DECLARE @C8 int;
DECLARE @C9 int;
DECLARE @C10 bit;
DECLARE @C11 date;
DECLARE @C12 date;
set @FromMonth = (select FromMonth from master..t where t.c1=1 );
set @ToMonth = (select ToMonth from master.t where t.c1=1 );
set @Result=@ToMonth - @FromMonth;
while(@Result!=0)
begin
set @FromMonth = @FromMonth+1
insert into master..t(c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,FromMonth,ToMonth)
values(c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,@FromMonth,ToMonth);
set @Result = @Result -1;
break;
end;
ありがとう、