我希望这个问题是有道理的。我在 SAS 中使用 SQL 来查询 Oracle 数据库。我也使用 SQL Developer。我有一个我知道有效的 SQL 查询,但是当我尝试修改它以在 SAS(T/SQL) 中工作时,结果不一样。
我正在尝试返回结束日期在 2012 年 3 月之内的活动的客户。谁能告诉我我做错了什么?
工作查询:
select distinct customer_key
from edw.customer_product_fact
where time_key = '31-jan-12'
and campaign_active = 'Y'
and campaign_cd is not null
and last_day(campaign_end_date) = add_months(time_key,2)
SAS查询:
select distinct customer_key
from edw.customer_product_fact
where time_key = '31-jan-12'd
and campaign_active = 'Y'
and campaign_cd is not null
and intnx('month',campaign_end_date, 0, 'end') =intnx('month', time_key, 2, 'end');
我尝试使用dateadd
,intnx
但 SAS 不支持它。