I pulled this data using filtering receipt date from Jan 1, 2015 to Feb 1 2015.
I need to get closest po ended from receipt date. let say this esn 990002036924452 the receipt date is '2015-01-07 17:39:44.660',
so the closest PO ended is '2015-04-23 20:26:55.000'. another example. for this esn R9000000000019761824, the receipt date is 2015-01-03 19:23:54.980
but i will get the latest po ended/last po ended which it should be '2015-03-20 16:43:07.000'. if there is no closest date from po ended still i would include the records.
Any help would be greatly appreciated.
--this is the result from my last cte process
drop table #sample
Create table #sample
(ESN nvarchar(35), ESN2 nvarchar(35), Receipt_Date datetime, PO_ENDED datetime, pstatus int)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002036924452','990002036924452','2015-01-07 17:39:44.660','2014-01-09 04:13:29.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002036924452','990002036924452','2015-01-07 17:39:44.660','2015-04-23 20:26:55.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002036924452','990002036924452','2015-01-07 17:39:44.660','2015-07-14 01:34:34.000',4)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002038378525','990002038378525','2015-01-07 05:29:56.923','2015-05-29 14:50:52.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002038378525','990002038378525','2015-01-07 05:29:56.923','2015-07-30 01:08:51.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002038378525','990002038378525','2015-01-07 05:29:56.923','2015-09-18 04:05:39.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('R9000000000019761824','354403060637509','2015-01-03 19:23:54.980','2015-02-07 09:50:08.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('R9000000000019761824','354403060637509','2015-01-03 19:23:54.980','2015-02-07 09:50:08.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('R9000000000019761824','354403060637509','2015-01-03 19:23:54.980','2015-02-07 09:50:08.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('R9000000000019761824','354403060637509','2015-01-03 19:23:54.980','2015-03-20 16:43:07.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('R9000000000019761824','354403060637509','2015-01-03 19:23:54.980','2015-03-20 16:43:07.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('R9000000000019761824','354403060637509','2015-01-03 19:23:54.980','2015-03-20 16:43:07.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002011652284','990002011652284','2015-01-21 20:34:21.763','2014-10-08 04:44:10.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002011652284','990002011652284','2015-01-21 20:34:21.763','2015-07-24 01:05:30.000',7)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('990002011652284','990002011652284','2015-01-21 20:34:21.763','1900-01-01 08:00:00.000',4)
insert into #sample(ESN,ESN2,Receipt_Date,PO_ENDED,pstatus)values('R9000000000019925008','354403063739831','2015-01-28 11:59:19.653','2015-06-25 03:18:43.000',7)
select t.ESN, t.ESN2, t.Receipt_Date, t.PO_ENDED, t.pstatus
from #sample t
expected result
ESN-------------------ESN2-------------Receipt_Date-------------POENDED---------------
--------------------------------------------------------------------------------------
990002036924452-------990002036924452--2015-01-07 17:39:44.660--2015-04-23 20:26:55.000
990002038378525-------990002038378525--2015-01-07 05:29:56.923--2015-05-29 14:50:52.000
R9000000000019761824--354403060637509--2015-01-03 19:23:54.980--2015-03-20 16:43:07.000
990002011652284-------990002011652284--2015-01-21 20:34:21.763--2015-07-24 01:05:30.000
R9000000000019925008--354403063739831--2015-01-28 11:59:19.653--2015-06-25 03:18:43.000