2017-04-11 47 views
0

我正尝试使用proc sql连接sas中的两个表格。但是日期不同(表格1具有日期时间格式,表格2具有日期9)。我想加入带有id的表格(两个表格都是通用的)和日期。 DATEPART似乎没有工作。有任何想法吗?这是我试图运行,但不工作的代码:以不同的日期格式使用proc来连接2个表格

proc sql; 
create table p.data1 as 
select 
    a.*, 
    b.var1 as var1_alt, 
    Datepart(b.MonthEndDate) format date9. as EOMDate 

from 
    p.base_1 a 

    left join q.a_GLV b 
    on a.ID = b.ID 
    and a.MonthEndDate = b.MonthEndDate 
order by 
    a.ID, 
    a.MonthEndDate 
; 
quit; 
+0

先将它们投射到同一日期类型 – maSTAShuFu

回答

1

您需要的加入,因为datetimedate是不同的号码SAS使用datepart(#秒VS天数)。

proc sql; 
create table p.data1 as 
select 
    a.*, 
    b.var1 as var1_alt, 
    Datepart(b.MonthEndDate) format date9. as EOMDate 

from 
    p.base_1 a 

    left join q.a_GLV b 
    on a.ID = b.ID 
    and a.MonthEndDate = datepart(b.MonthEndDate) 
order by 
    a.ID, 
    a.MonthEndDate 
; 
quit; 
+0

完美地工作!谢谢! – user2641784

相关问题