Beruflich Dokumente
Kultur Dokumente
Tutorials
Paper 268-29
SUGI 29
Tutorials
SUGI 29
Tutorials
ANOTHER CASE
The CASE statement has much of the same functionality as an IF statement. Here is yet another variation on the CASE expression: PROC SQL; SELECT STATE, CASE WHEN SALES > 20000 AND STORENO IN (33281,31983) THEN CHECKIT ELSE OKAY
SUGI 29
Tutorials
REMERGING
Remerging occurs when a summary function is used without a GROUP BY. The result is a grand total shown on every line: PROC SQL; SELECT STATE, SUM(SALES) AS TOTSALES FROM USSALES; QUIT; (see output #10 for results)
CALCULATING PERCENTAGE
Remerging can also be used to calculate percentages: PROC SQL; SELECT STATE, SALES, (SALES/SUM(SALES)) AS PCTSALES FORMAT=PERCENT7.2 FROM USSALES; QUIT; (see output #12 for results) Check your output carefully when the remerging note appears in your log to determine if the results are what you expect.
SUGI 29
Tutorials
ORDER BY STATE, SALES DESC; QUIT; (see output #13 for results)
SUGI 29
Tutorials
PROC SQL; SELECT STATE, STORE, SUM(SALES) AS TOTSALES FROM USSALES GROUP BY STATE, STORE WHERE TOTSALES > 500; QUIT; (see output #17 for results)
INNER JOIN
A Conventional or Inner Join combines datasets only if an observation is in both datasets. This type of join is similar to a DATA step merge using the IN Data Set Option and IF logic requiring that the observations key is on both data sets (IF ONA AND ONB). PROC SQL;
SUGI 29
Tutorials
SELECT * FROM GIRLS, BOYS WHERE GIRLS.STATE=BOYS.STATE; QUIT; (see output #21 for results)
IN SUMMARY
PROC SQL is a powerful data analysis tool. It can perform many of the same operations as found in traditional SAS code, but can often be more efficient because of its dense language structure. PROC SQL can be an effective tool for joining data, particularly when doing associative, or three-way joins. For more information regarding SQL joins, reference the papers noted in the bibliography.
CONTACT INFORMATION
Your comments and questions are valued and encouraged. Contact the author at: Katie Minten Ronk Systems Seminar Consultants 2997 Yarmouth Greenway Drive Madison, WI 53713
Phone: (608) 278-9964
SUGI 29
Tutorials
Other brand and product names are trademarks of their respective companies.
SUGI 29
Tutorials
OUTPUT #1 (PARTIAL):
TU6U@T6G@TTUPS@IP 8PHH@IU TUPS@I6H XD "!""!"" T6G@TX@S@TGPX7@86VT@PA8PHQ@UDUPSTT6G@ SPITW6GV@SDU@TUPS@ XD( "!""!"! T6G@TTGPX@SUC6IIPSH6G7@86VT@PA769X@6UC@S QSD8@9TH6SUBSP8@ST XD $"! "!" 6W@S6B@T6G@T68UDWDU`S@QPSU@9 W6GV@8DU`
OUTPUT #2 (PARTIAL):
OUTPUT #3 (PARTIAL):
SPXTU6U@T6G@T XD "!" !XD( "!" "XD $"! S@BDPIT6G@TU6Y "!" "!"$$ % $$$ % $ "!"( "!"#$$ % $#$$ % $ "!" $"! &$ %$$&$ %$$ ""!""!(!" %%#%! %%#%
OUTPUT #4 (PARTIAL):
OUTPUT #5 (PARTIAL):
XD$$ % $$$ % $ XD#$$ % $#$$ % $ XD&$ %$$&$ %$$ HD %%#%! %%#%
STATE
TAX
REBATE
SUGI 29
Tutorials
OUTPUT #6 (PARTIAL):
S@QPSUPAUC@VTT6G@T 6HPVIUPA TU6U@T6G@T$U6Y XD "!"$$ % XD( "!"#$$ % XD $"! &$ % HD""!(!" %%#% QS@Q6S@97`UC@H6SF@UDIB9@QU
OUTPUT #7 (PARTIAL):
OUTPUT #8 (PARTIAL):
OUTPUT #9:
OUTPUT #11:
10
SUGI 29
Tutorials
STATE SALES PCTSALES ________________________ WI 10103.23 5.86% WI 9103.23 5.28% WI 15032.11 8.71% MI 33209.23 19.2% NOTE: The query requires remerging summary Statistics back with the original data.
REGION TAX ---------------312 516.6055 313 1604.161 313 1111.156 319 1016.906
TU6U@T6G@TU6Y XD "!"$$ % $ XD( "!"#$$ % $ XD $"! &$ %$$ DG!""' ! %(%
11
SUGI 29
Tutorials
TU6U@TUPS@IPUPUT6G@T DG" ! ! ""! DG" "&"!!!!" ! DG" "' "!'"!! DG" ('"!""' ! HD""!' ""!(!"
OUTPUT #19:
OUTPUT #20(PARTIAL):
I6H@TU6U@I6H@TU6U@ dddddddddddddddddddddddddddddddddddddd I6I8`XDI@9XD I6I8`XDB@I@I` I6I8`XD696H86 E@6IHII@9XD E@6IHIB@I@I` E@6IHI696H86 6H@GD6DGI@9XD 6H@GD6DGB@I@I` 6H@GD6DG696H86
12
SUGI 29
Tutorials
OUTPUT #22:
@HQGP`@@A@7T6G@T7@I@ADUT P7TAI6H@GI6H@TUPS@IPP7TTU6U@T6G@TTUPS@IPP7TAI6H@GI6H@8G6DHT 6II7@8F@S""!' HD" !(!"""!' 6II7@8F@S!" !8CSDT9P7TPI""!' !HD $ "!#"""" !!8CSDT9P7TPI "@6SGADTC@S""!' "DG!$""' !" ('""6GG@IQ6SF "(! #6GG@IQ6SF" "&"#DG!%!!" !" "&"#7@UU`EPCITPI"'"! $7@UU`EPCITPI" "&" %F6S@I696HT" "&"
13