create TABLE Table1
(
a varchar(10),
b varchar(10),
c varchar(10),
CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED
(
a ASC
)
) ON [PRIMARY]
create TABLE Table2
(
a varchar(10),
c varchar(10),
CONSTRAINT [PK_Table2] PRIMARY KEY CLUSTERED
(
a ASC
)
) ON [PRIMARY]
GO
Insert into Table1 values('赵','asds',null)
Insert into Table1 values('钱','asds','100')
Insert into Table1 values('孙','asds','80')
Insert into Table1 values('李','asds',null)
Insert into Table2 values('赵','90')
Insert into Table2 values('钱','100')
Insert into Table2 values('孙','80')
Insert into Table2 values('李','95')
GO
select * from Table1
declare @name varchar(10)
declare @score varchar(10)
declare mycursor cursor for select a from Table1 where c is null
open mycursor
fetch next from mycursor into @name
while(@@fetch_status = 0)
BEGIN
select @score=c from Table2 where a=@name
update Table1 set c = @score where a = @name
fetch next from mycursor into @name
END
close mycursor
deallocate mycursor
GO
select * from Table1
GO
drop TABLE Table1
drop TABLE Table2