what is Difference between PROC SQL JOINS and MERGE?
Answers were Sorted based on User's Feedback
Answer / rajitha macherla
The resultant dataset depends on the input datasets.
In case of one to one and one to many both work
similarly,i.e. the resultant dataset is same.
But differs in case of many to many and non matching
datasets:
many to many:
ex: (merge on x) (proc sql)
X Y X Z X Y Z X Y Z
----- ------ ------- -------
1 A 1 F 1 A F 1 A F
1 C 1 R ---> 1 C R 1 A R
2 B 2 G 2 B G 1 C F
1 C R
2 B G
NON MATCHING DATA:
ex: (merge on x) (proc sql)
X Y X Z X Y Z X Y Z
----- ------ ------- -------
1 A 1 F 1 A F 1 A F
2 B 3 T ---> 2 B . 3 C T
3 C 4 G 3 C T
4 . G
| Is This Answer Correct ? | 28 Yes | 6 No |
Answer / siddu
Before doing the merge process we have to do sorting depended the key variable, but in proc sql joins no need to do sorting.
| Is This Answer Correct ? | 6 Yes | 0 No |
Answer / nrtya vardhanapu
merge is a statement which is used in the data step Whereas
join is a procedure which is used in the proc step. But the
outputs produced are the same !!!!
| Is This Answer Correct ? | 0 Yes | 13 No |
Differentiate between format and informat? : sas-grid-administration
wt is a-z and a--z?
who is the best SAS clinical Trainer in Hyderabad?
what are _numeric_ and _character_ and what do they do? : Sas programming
/* This is example of age caluculate wihtout to display perfect days and years in output window */ data age; retain dob "12jun2003"d now "24may2011"d; age1=now-dob; age=(now-dob)/365.25; years=int(age); days1=round((age-years)*365.25); months=month(now)-1; if days1 gt 30 and months in(12,10,8,6,4,2)then do; month1=days1/30.4375; month=int(days1/30.4375); if day(now)=1 then days=1; else days=round((month1-month)*30.4375)+1; drop days1 month1 month; end; else if days1 gt 30 and months in (1,3,5,7,9,11)then do; month1=days1/30.4375; month=int(days1/30.4375); if day(now)=1 then days=1; else days=round((month1-month) *30.4375); drop days1 month1 month; end; drop age age1; proc print data=age; format dob now date.; run;
How would you code a merge that will write the matches of both to one data set, the non-matches from the left-most data?
What SAS statements would you code to read an external raw data file to a DATA step?
Can you continue to write code while the rest of the people on the floor where you work have a noisy party to which you were not invited?
In a shcool there are 1000 students. After completion of every test in 6 subjects , each subject teacher submit the marks of every student at different times and loaded in the database commonly. How will you seperate the top two subject marks for each each studet using SAS?
Can Some one Explain How the Datasets from SAS can be loaded in to the MVS OS?
I am preparing SAS Certified Advanced Programmer for SAS 9 in 2014. If anybody has the latest dumps for this exam, please mail me at dhiman.mukherjee@gmail.com
What are the differences between sum function and using “+” operator?