日期:2014-05-18 浏览次数:20756 次
create table 表1
(编号 varchar(15), 数量 varchar(5), 地址 varchar(5), 产品 varchar(6))
insert into 表1(编号)
select '111206006' union all
select '111206006' union all
select '111206006' union all
select '111206006' union all
select '111206006' union all
select '111206006' union all
select '111207022' union all
select '111207022' union all
select '111207022' union all
select '111207022' union all
select '111207022'
create table 表2
(编号 varchar(15), 数量 varchar(5), 地址 varchar(5), 产品 varchar(6))
insert into 表2
select '111206006', '3', '345', 'ps01' union all
select '111206006', '6', '345', 'ps02' union all
select '111206006', '7', '353', 'ps01' union all
select '111207022', '7', '333', 'ps01' union all
select '111207022', '7', '323', 'ps01' union all
select '111207024', '2', '333', 'ps01' union all
select '111207024', '6', '323', 'ps03' union all
select '111207024', '9', '333', 'ps06' union all
select '111207024', '21', '323', 'ps09'
update t1
set t1.数量=isnull(t2.数量,''),
    t1.地址=isnull(t2.地址,''),
    t1.产品=isnull(t2.产品,'')
from 
(select row_number() over(partition by 编号 order by getdate()) rn, 
编号,数量,地址,产品 from 表1) t1
left join 
(select row_number() over(partition by 编号 order by getdate()) rn, 
编号,数量,地址,产品 from 表2) t2 on t1.编号=t2.编号 and t1.rn=t2.rn
select * from 表1
/*
编号              数量    地址    产品
--------------- ----- ----- ------
111206006       3     345   ps01
111206006       6     345   ps02
111206006       7     353   ps01
111206006                   
111206006                   
111206006                   
111207022       7     333   ps01
111207022       7     323   ps01
111207022                   
111207022                   
111207022                   
(11 row(s) affected)
*/