2016-02-11 70 views
1

我有兩個表a和b。 我想加入這兩個在以下兩種情況下:有條件加入SAS

  1. a.time1 < b.time1和b.time1 < a.time2
    再加入A和B上的ID
  2. b.time1 < a.time1和a.time1 < b.time2
    然後加入a和b上ID

一個。

ID Name Time1     Time2 
1 Joe 01JAN2015:07:02:28 01JAN2015:07:49:13 
2 Jenny 01JAN2015:10:06:09 01JAN2015:10:07:11 
3 Angie 01JAN2015:07:02:12 01JAN2015:08:00:35 

b。

ID Name Time1     Time2 
2 David 01JAN2015:08:19:27 01JAN2015:09:15:29 
3 Mike 01JAN2015:10:58:22 01JAN2015:10:59:21 
4 Emily 01JAN2015:08:31:18 01JAN2015:08:53:19 

任何人都可以幫忙嗎?

+0

請**校對您的文章**你提交之前。這是一個亂七八糟的文字,讓你覺得你可以很容易清理。 – Siyual

+0

謝謝。這是第一次發佈。記住! – jen

+0

您正在使用哪種數據庫系統?甲骨文? MySQL的? MS SQL Server?請評論,以便可以分配正確的標記 – jclozano

回答

1

這應做到:

proc sql; 
    create table joined_data as 
    select * from 
    a 
    INNER JOIN 
    b 
    on a.x=b.x 
    where (a.time1 < b.time1 and b.time1 < a.time2) 
     or (b.time1 < a.time1 and a.time1 < b.time2); 
quit;