Hi Team, Can you please provide your suggestions on how to optimize the below query: proc sql; create table low_level_min_dates as select DISTINCT mca.sort_order_id, mca.sps_mca_id,sps_bca_id,sps_card_id,sps_industry_id,sps_merchant_id, sps_product_id, min(sps_time_id) as sps_time_id from lup_mca_match mca inner join fact.fact_billings_month bil on mca.sps_mca_id = bil.sps_mca_id AND bil.sps_billings_type_id = 1 AND bil.bill_bud_usd_am ne . group by sort_order_id, mca.sps_mca_id, sps_bca_id, sps_card_id, sps_industry_id, sps_merchant_id,sps_product_id order by sort_order_id, sps_time_id ; quit; NOTE: Table WORK.LOW_LEVEL_MIN_DATES created, with 48812804 rows and 8 columns. NOTE: PROCEDURE SQL used (Total process time): real time 1:58:14.00 cpu time 21:58.92 Table fact.fact_billings_month has 200 million records and there are indexes on all the variables and table lup_mca_match has 6000 records and my fact is using a SPDE engine. So can you please suggest me in the different ways the above query can be written in reducing the real time. Regards, Samuel.
... View more