この質問が理にかなっていることを願っています。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 ではサポートされていません。