请问如何合并这些数据库记录?谢谢!
declare @t1 table ([customer_id] int
,[product_id] int
,[sale_type_id] int
,[price] decimal(10,4)
,[begin_date] datetime
,[end_date] datetime
,[price_key] int
,[price_source] int)
declare @t2 table ([customer_id] int
,[product_id] int
,[sale_type_id] int
,[price] decimal(10,4)
,[begin_date] datetime
,[end_date] datetime
,[price_key] int
,[price_source] int)
insert into @t1
select 1210001,1021,8,2.3000,'2009-12-01','2009-12-09',13835,3 union all
select 1210001,1021,8,2.1000,'2009-12-10','2009-12-30',14995,3 union all
select 1210001,1022,8,2.3000,'2009-12-01','2009-12-09',13836,3 union all
select 1210001,1022,8,2.1000,'2009-12-10','2009-12-30',14996,3 union all
select 1210001,1023,8,2.3000,'2009-12-01','2009-12-09',13837,3 union all
select 1210001,1023,8,2.1000,'2009-12-10','2009-12-30',14997,3 union all
select 1210001,1041,8,2.3000,'2009-12-01','2009-12-09',13838,3 union all
select 1210001,1041,8,2.0000,'2009-12-31','2009-12-31',15471,3 union all
select 1210001,1042,8,2.3000,'2009-12-01','2009-12-09',13839,3 union all
select 1210001,1042,8,2.0000,'2009-12-31','2009-12-31',15472,3 union all
select 1210001,1043,8,2.3000,'2009-12-01','2009-12-09',13840,3 union all
select 1210001,1043,8,2.0000,'2009-12-31','2009-12-31',15473,3 union all
select 1210001,1051,8,2.3000,'2009-12-01','2009-12-09',13841,3 union all
select 1210001,1051,8,2.3000,'2009-12-10','2009-12-30',15001,3 union all
select 1210001,1051,8,2.3000,'2009-12-31','2009-12-31',15474,3 union all
select 1210001,1052,8,2.3000,'2009-12-10','2009-12-30',15002,3 union all
select 1210001,1052,8,2.3000,'2009-12-31','2009-12-31',15475,3 union all
select 1210001,1053,8,2.3000,'2009-12-10','2009-12-20',15475,3
insert into @t2
select 1210001,1021,8,2.5440,'2009-12-01','2009-12-31',12033,1 union all
select 1210001,1022,8,2.5440,'2009-12-01','2009-12-31',12034,1 union all
select 1210001,1023,8,2.5440,'2009-12-01','2009-12-31',12035,1 union all
select 1210001,1041,8,2.8128,'2009-12-01','2009-12-31',12036,1 union all
select 1210001,1042,8,2.8128,'2009-12-01','2009-12-31',12037,1 union all
select 1210001,1043,8,2.8128,'2009-12-01','2009-12-31',12038,1 union all
select 1210001,1051,8,2.8128,'2009-12-01','2009-12-31',12039,1 union all
select 1210001,1052,8,2.8128,'2009-12-01','2009-12-31',12040,1
select * from @t1
select * from @t2
==============================
合并为大概如下:
select 1210001,1021,8,2.3000,'2009-12-01','2009-12-09',13835,3 union all
select 1210001,1021,8,2.1000,'2009-12-10','2009-12-30',14995,3 union all
select 1210001,1021,8,2.5440,'2009-12-31','2009-12-31',12033,1 union all
select 1210001,1041,8,2.3000,'2009-12-01','2009-12-09',13838,3 union all
select 1210001,1041,8,2.8128,'2009-12-10','2009-12-30',12036,1 union all
select 1210001,1041,8,2.0000,'2009-12-31','2009-12-31',15471,3
就是把@t1一个月少了的部分用@t2中的数据补上
谢谢!