BookmarkSubscribeRSS Feed
acordes
Rhodochrosite | Level 12

How to transfer the sql code (working) to its fedsql silbing?

 

proc sql;
		create table sum22 as 
			select a.*, b.fini, put(a.year,4.) as _year 
               from PUBLIC.ALL_MONTHLY_COPY a   join 
					(select sum(fin) as fini, from_brand, year from 
					PUBLIC.ALL_MONTHLY_COPY where  month(mes) <= month(intnx('month', today(), -7, 'end')) and 
					lowcase(producto) <> 'other' AND (VN_VN ='10' or VN_VN = '11') group by from_brand, year 
					) b 
			on a.from_brand=b.from_brand and a.year=b.year;
quit;

But in fedsql it gives an ERROR: Function MONTH(DOUBLE) does not exist so I circumvent to this unefficient code. 

proc cas;
source MPG_toyota;
		create table public.sum22{options replace=true} as 
			select a.*, b.fini, put(a.year,4.) as _year 
               from PUBLIC.ALL_MONTHLY_COPY a   join 
					(select sum(fin) as fini, from_brand, year from 
					PUBLIC.ALL_MONTHLY_COPY where  month(mes) <= month(intnx('month', today(), -7, 'end'))  and 
					lowcase(producto) <> 'other' AND (VN_VN ='10' or VN_VN = '11') group by from_brand, year 
					) b 
			on a.from_brand=b.from_brand and a.year=b.year  ;
endsource;
fedSQL.execDirect / query=MPG_toyota;
quit;
data _null_;
format _fecha_cierre date9.;
_fecha_cierre=intnx('month', today(), -7, 'end');
call symputx("fecha_cierre", _fecha_cierre);
run;

%let tt=%sysfunc(putn(&fecha_cierre., month.));
%put &fecha_cierre. &tt.;

proc cas;
source MPG_toyota;
		create table public.sum22{options replace=true} as 
			select a.*, b.fini, put(a.year,4.) as _year 
               from PUBLIC.ALL_MONTHLY_COPY a   join 
					(select sum(fin) as fini, from_brand, year from 
					PUBLIC.ALL_MONTHLY_COPY where  month(mes) <= &tt. and 
					lowcase(producto) <> 'other' AND (VN_VN ='10' or VN_VN = '11') group by from_brand, year 
					) b 
			on a.from_brand=b.from_brand and a.year=b.year  ;
endsource;
fedSQL.execDirect / query=MPG_toyota;
quit;

 

1 REPLY 1
yabwon
Amethyst | Level 16

Could you share some more log?

B.

_______________
Polish SAS Users Group: www.polsug.com and communities.sas.com/polsug

"SAS Packages: the way to share" at SGF2020 Proceedings (the latest version), GitHub Repository, and YouTube Video.
Hands-on-Workshop: "Share your code with SAS Packages"
"My First SAS Package: A How-To" at SGF2021 Proceedings

SAS Ballot Ideas: one: SPF in SAS, two, and three
SAS Documentation



hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 699 views
  • 1 like
  • 2 in conversation