首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

合并两个表的有关问题

2012-04-11 
合并两个表的问题有以下两个表:表2:P241799 GWP0800770pc.RMB0.008201806GWP0700225pc.HKD0.06PU300412NUL

合并两个表的问题
有以下两个表:
表2:
P241799 GWP0800770pc. RMB 0.008
201806GWP0700225pc. HKD 0.06
PU300412 NULL NULL NULL NULL
表2:
P241799 NULL NULL NULLNULL
201806 NULL NULL NULLNULL
PU300412ITP1000141pc. HKD 0.135
要以下結果,如何做到呢?
P241799 GWP0800770pc. RMB 0.008
201806GWP0700225pc. HKD 0.06
PU300412 ITP1000141 pc, HKD 0.135

排序不得调整,只能按这个顺序。

[解决办法]

SQL code
declare @表1 table (c1 varchar(8),c2 varchar(10),c3 varchar(3),c4 varchar(3),c5 numeric(4,3))insert into @表1select 'P241799','GWP0800770','pc.','RMB',0.008 union allselect '201806','GWP0700225','pc.','HKD',0.06 union allselect 'PU300412',null,null,null,nulldeclare @表2 table (c1 varchar(8),c2 varchar(10),c3 varchar(3),c4 varchar(3),c5 numeric(4,3))insert into @表2select 'P241799',null,null,null,null union allselect '201806',null,null,null,null union allselect 'PU300412','ITP1000141','pc.','HKD',0.135select ISNULL(a.c1,b.c1) AS c1,ISNULL(a.c2,b.c2) AS c2,ISNULL(a.c3,b.c3) AS c3,ISNULL(a.c4,b.c4) AS c4,ISNULL(a.c5,b.c5) AS c5from @表1 aLEFT JOIN @表2 b ON a.c1=b.c1/*c1       c2         c3   c4   c5-------- ---------- ---- ---- ---------------------------------------P241799  GWP0800770 pc.  RMB  0.008201806   GWP0700225 pc.  HKD  0.060PU300412 ITP1000141 pc.  HKD  0.135*/ 

热点排行