|
Delinda
Constraint Violating Yak Guru
315 Posts |
Posted - 2010-01-20 : 00:53:29
|
| My table and row as follow,declare @col_X as tinyintdeclare @row_Y as tinyintset @col_X=4set @row_Y=11declare @tBusSeat table(TrnxID int identity(1,1),BusCd char(10) not null,col_X tinyint not null,row_Y tinyint not null,seatDesc char(4) null)/*alter table @tBusSeat add constraint tBusType_BusCdcolXrowY_UQ unique (BusCd,col_X,row_Y)*//*alter table @tBusSeat add constraint tBusType_BusCdseatDesc_UQ unique (BusCd,seatDesc)*/insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',1,1,'1A')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',2,1,'1B')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',3,1,'1C')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',4,1,'1D')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',1,2,'2A')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',3,2,'2C')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',4,2,'2D')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',2,3,'3B')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',3,9,'9C')insert into @tBusSeat(BusCd,col_X,row_Y,seatDesc) values('STD30',4,9,'9D')declare @tBusSeatV3 table(TrnxID int identity(1,1),BusCd char(10) not null,col_X tinyint null,row_Y tinyint null,seatDesc char(4) null)declare @i tinyint;declare @j tinyint;set @i = 1;while @i <= @row_Ybegin set @j = 1; while @j <=@col_X begin insert into @tBusSeatV3(BusCd,col_X,row_Y) values('STD30',@j,@i) set @j = @j + 1; endset @i = @i + 1;endselect * from @tBusSeatTrnxID| BusCd | col_X | row_Y | seatDesc------------------------------------------------------1 STD30 1 1 1A 2 STD30 2 1 1B 3 STD30 3 1 1C 4 STD30 4 1 1D 5 STD30 1 2 2A 6 STD30 3 2 2C 7 STD30 4 2 2D 8 STD30 2 3 3B 9 STD30 3 9 9C 10 STD30 4 9 9D select * from @tBusSeatV3TrnxID| BusCd | col_X | row_Y | seatDesc------------------------------------------------------1 STD30 1 1 NULL2 STD30 2 1 NULL3 STD30 3 1 NULL4 STD30 4 1 NULL5 STD30 1 2 NULL6 STD30 2 2 NULL7 STD30 3 2 NULL8 STD30 4 2 NULL9 STD30 1 3 NULL10 STD30 2 3 NULL11 STD30 3 3 NULL12 STD30 4 3 NULL13 STD30 1 4 NULL14 STD30 2 4 NULL15 STD30 3 4 NULL16 STD30 4 4 NULL17 STD30 1 5 NULL18 STD30 2 5 NULL19 STD30 3 5 NULL20 STD30 4 5 NULL21 STD30 1 6 NULL22 STD30 2 6 NULL23 STD30 3 6 NULL24 STD30 4 6 NULL25 STD30 1 7 NULL26 STD30 2 7 NULL27 STD30 3 7 NULL28 STD30 4 7 NULL29 STD30 1 8 NULL30 STD30 2 8 NULL31 STD30 3 8 NULL32 STD30 4 8 NULL33 STD30 1 9 NULL34 STD30 2 9 NULL35 STD30 3 9 NULL36 STD30 4 9 NULL37 STD30 1 10 NULL38 STD30 2 10 NULL39 STD30 3 10 NULL40 STD30 4 10 NULL41 STD30 1 11 NULL42 STD30 2 11 NULL43 STD30 3 11 NULL44 STD30 4 11 NULLI want fillup seatDesc field in @tBusSeatV3 with seatDesc field in @tBusSeat based on col_X and row_YAs a result, my @tBusSeatV3 filled as follow,TrnxID| BusCd | col_X | row_Y | seatDesc-------------------------------------------------------1 STD30 1 1 1A2 STD30 2 1 1B3 STD30 3 1 1C4 STD30 4 1 1D5 STD30 1 2 2A6 STD30 2 2 NULL7 STD30 3 2 2C8 STD30 4 2 2D9 STD30 1 3 NULL10 STD30 2 3 3B11 STD30 3 3 NULL12 STD30 4 3 NULL13 STD30 1 4 NULL14 STD30 2 4 NULL15 STD30 3 4 NULL16 STD30 4 4 NULL17 STD30 1 5 NULL18 STD30 2 5 NULL19 STD30 3 5 NULL20 STD30 4 5 NULL21 STD30 1 6 NULL22 STD30 2 6 NULL23 STD30 3 6 NULL24 STD30 4 6 NULL25 STD30 1 7 NULL26 STD30 2 7 NULL27 STD30 3 7 NULL28 STD30 4 7 NULL29 STD30 1 8 NULL30 STD30 2 8 NULL31 STD30 3 8 NULL32 STD30 4 8 NULL33 STD30 1 9 NULL34 STD30 2 9 NULL35 STD30 3 9 9C36 STD30 4 9 9D37 STD30 1 10 NULL38 STD30 2 10 NULL39 STD30 3 10 NULL40 STD30 4 10 NULL41 STD30 1 11 NULL42 STD30 2 11 NULL43 STD30 3 11 NULL44 STD30 4 11 NULLHow my update statement look's like? |
|