SAS Programming Tips, Tricks, and Techniques
|
|
|
- Dorcas Allison
- 10 years ago
- Views:
Transcription
1 SAS Programming Tips, Tricks, and Techniques A presentation by Kirk Paul Lafler
2 Copyright by Kirk Paul Lafler, Software Intelligence Corporation All rights reserved. SAS is the registered trademark of SAS Institute Inc., Cary, NC, USA. All other company and product names mentioned are used for identification purposes only and may be trademarks of their respective owners.
3 Presentation Objectives - Explore Useful SAS System Options Interesting PROC SQL Options A Userdefined Function using PROC FCMP Integrity Constraints for Tables A Userdefined Dictionary Table and SASHELP View Tool
4 Example Datasets / Tables Movies Actors
5 Exploring SAS System Options
6 SOURCE versus SOURCE2 Primary Source Statements: OPTIONS SOURCE2; %INCLUDE c:\workshops\logcontroloptions.sas ; PROC PRINT DATA=MOVIES NOOBS; VAR TITLE RATING CATEGORY; RUN; Secondary Source Statements (Included Code): OPTIONS MSGLEVEL=I ; /* DISPLAY SORT, MERGE PROCESSING, AND INDEX USAGE */;
7 SOURCE versus SOURCE2 Log Results SAS Log Results: OPTIONS SOURCE2; %INCLUDE 'c:\workshops\logcontroloptions.sas'; NOTE: %INCLUDE (level 1) file c:\workshops\logcontroloptions.sas is file c:\workshops\logcontroloptions.sas. +OPTIONS MSGLEVEL=I +/* DISPLAY SORT, MERGE PROCESSING, AND INDEX USAGE */ +; NOTE: %INCLUDE (level 1) ending. PROC PRINT DATA=MOVIES NOOBS; VAR TITLE RATING CATEGORY; RUN;
8 Exploring PROC SQL Options
9 SQL Join Algorithms Nested Loop (aka Brute force) join algorithm Sort-merge join algorithm Index join algorithm Hash join algorithm
10 Influencing the SQL Optimizer
11 Specifying MAGIC=101 PROC SQL MAGIC=101; SELECT * FROM MOVIES, ACTORS WHERE MOVIES.TITLE = ACTORS.TITLE; QUIT; SAS Log Results PROC SQL MAGIC=101; SELECT * FROM MOVIES, ACTORS WHERE MOVIES.TITLE = ACTORS.TITLE; NOTE: PROC SQL planner chooses sequential loop join. QUIT;
12 Specifying MAGIC=102 PROC SQL MAGIC=102; SELECT * FROM MOVIES, ACTORS WHERE MOVIES.TITLE = ACTORS.TITLE; QUIT; SAS Log Results PROC SQL MAGIC=102; SELECT * FROM MOVIES, ACTORS WHERE MOVIES.TITLE = ACTORS.TITLE; NOTE: PROC SQL planner chooses merge join. QUIT;
13 Specifying MAGIC=103 PROC SQL MAGIC=103; SELECT * FROM MOVIES, ACTORS WHERE MOVIES.TITLE = ACTORS.TITLE; QUIT; SAS Log Results PROC SQL MAGIC=103; SELECT * FROM MOVIES, ACTORS WHERE MOVIES.TITLE = ACTORS.TITLE; NOTE: PROC SQL planner chooses merge join. NOTE: A merge join has been transformed to a hash join. QUIT;
14 Specifying IDXWHERE=Yes The IDXWHERE= dataset option can be specified to influence the SQL optimizer to use the most efficient index available (if one exists) to execute a query.
15 Specifying IDXWHERE=Yes OPTIONS MSGLEVEL=I; PROC SQL; SELECT * FROM MOVIES(IDXWHERE=Yes), ACTORS WHERE MOVIES.TITLE = ACTORS.TITLE; QUIT; SAS Log Results PROC SQL; SELECT * FROM MOVIES(IDXWHERE=Yes), ACTORS WHERE MOVIES.TITLE = ACTORS.TITLE; INFO: Index Rating selected for WHERE clause optimization. QUIT;
16 Exploring a Userdefined Function using PROC FCMP
17 PROC FCMP Advantages User-Defined functions created with the FCMP procedure provide specific advantages: Code can be easier to read, write and modify Code is modular and callable Code is independent and not affected by its implementation Code is reusable by any program that has access to the dataset where the function is stored
18 User-defined Function (Part 1) /* Constructing a User Defined Function in FCMP */ proc fcmp outlib=sasuser.myfunctions.examples ; function Age_of_Movie_function(year) ; if year NE. then do ; Age_of_Movie = year(today()) year ; end ; return(age_of_movie); endsub ; quit ;
19 User-defined Function (Part 2) options cmplib=sasuser.myfunctions ; /* Call the User Defined Function created in FCMP */ data Age_of_Movie ; set mydata.movies ; Age_of_Movie = Age_of_Movie_function(year) ; put Year= Age_of_Movie= ; run ;
20 User-defined Function (Log Results)
21 Exploring Integrity Constraints for Tables
22 Methods of Building Integrity Data integrity problems such as missing information, duplicate values, and invalid data values can affect user confidence in a database environment. The objective is to establish rules in the database table(s) to safeguard and protect data. Application programs Older / less reliable Database table environment Newer / more reliable PROC DATASETS PROC SQL
23 Column and Table Constraints Data integrity is maintained by assigning column and table constraints. Modifications made through update and delete operations can have referential integrity constraints built into the database environment. Column and Table Constraints NOT NULL UNIQUE CHECK
24 NOT NULL Constraint To prevent null values from appearing in any row of a table for a specified column, a NOT NULL constraint can be coded. PROC SQL; CREATE TABLE work.rental_info (TITLE CHAR(30) NOT NULL, RENTAL_AMT NUM FORMAT=DOLLAR6.2); QUIT;
25 UNIQUE Constraint The UNIQUE constraint prevents rows containing duplicate values for a specified column from being added to a table. PROC SQL; CREATE TABLE work.rental_info (TITLE CHAR(30) UNIQUE, RENTAL_AMT NUM FORMAT=DOLLAR6.2); QUIT;
26 CHECK Constraint A CHECK constraint can be specified to assign specific rules that a column must adhere to. PROC SQL; ALTER TABLE MOVIES ADD CONSTRAINT CHECK_RATING CHECK (RATING IN ( G, PG, PG-13, R )); QUIT;
27 Exploring a Userdefined Tool using Dictionary Tables
28 Dictionary Tables / SASHELP Views SAS collects information about a session Session information is captured as read-only content Tables are accessible using PROC SQL Specify table in FROM clause of a SELECT DICTIONARY libref is automatically assigned SASHELP Views are accessed in a DATA step or with any of your favorite PROCs
29 Viewing Dictionary Tables / Views # of DICTIONARY Tables/Views: 22 in SAS in SAS in SAS 9.3
30 Cross-reference Listing PROC PRINT PROC PRINT DATA=SASHELP.VCOLUMN NOOBS; VAR LIBNAME MEMNAME NAME TYPE LENGTH; WHERE UPCASE(LIBNAME)=UPCASE( SASUSER") AND UPCASE(NAME)=UPCASE("TITLE"); RUN; Cross-reference listing for the column TITLE Library Column Column Name Member Name Column Name Type Length SASUSER ACTORS Title char 30 SASUSER MOVIES Title char 30
31 Cross-reference Listing PROC PRINT %MACRO CROSSREF(LIB, COLNAME); PROC PRINT DATA=SASHELP.VCOLUMN NOOBS; VAR LIBNAME MEMNAME NAME TYPE LENGTH; WHERE UPCASE(LIBNAME)=UPCASE("&LIB") AND UPCASE(NAME)=UPCASE("&COLNAME"); RUN; %MEND CROSSREF; %CROSSREF(SASUSER,TITLE);
32 Cross-reference Listing PROC PRINT PROC PRINT DATA=SASHELP.VCOLUMN NOOBS; VAR LIBNAME MEMNAME NAME TYPE LENGTH; WHERE UPCASE(LIBNAME)="SASUSER" AND UPCASE(NAME)="TITLE"; RUN; Cross-reference listing for the column TITLE Library Column Column Name Member Name Column Name Type Length SASUSER ACTORS Title char 30 SASUSER MOVIES Title char 30
33 Conclusion User-defined Tool using Dictionary Tables Useful SAS System Options PROC SQL Options Integrity Constraints for Tables User-defined Function using PROC FCMP
34 Thank You for Attending! Questions? A presentation by Kirk Paul Lafler
Five Little Known, But Highly Valuable, PROC SQL Programming Techniques. a presentation by Kirk Paul Lafler
Five Little Known, But Highly Valuable, PROC SQL Programming Techniques a presentation by Kirk Paul Lafler Copyright 1992-2014 by Kirk Paul Lafler and Software Intelligence Corporation. All rights reserved.
Simple Rules to Remember When Working with Indexes Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California
Simple Rules to Remember When Working with Indexes Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Abstract SAS users are always interested in learning techniques related
Exploring DATA Step Merges and PROC SQL Joins
PharmaSUG 2012 - Paper TA02 Exploring DATA Step Merges and PROC SQL Joins Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Abstract Explore the various DATA step merge and
DATA Step versus PROC SQL Programming Techniques
Paper FF-003 DATA Step versus PROC SQL Programming Techniques Kirk Paul Lafler, Software Intelligence Corporation ABSTRACT Are you considering whether to use a DATA step or PROC SQL step in your next project?
Demystifying PROC SQL Join Algorithms Kirk Paul Lafler, Software Intelligence Corporation
Paper TU01 Demystifying PROC SQL Join Algorithms Kirk Paul Lafler, Software Intelligence Corporation ABSTRACT When it comes to performing PROC SQL joins, users supply the names of the tables for joining
Using SAS as a Relational Database
Using SAS as a Relational Database Yves DeGuire Statistics Canada Come out of the desert of ignorance to the OASUS of knowledge Introduction Overview of relational database concepts Why using SAS as a
CHAPTER 1 Overview of SAS/ACCESS Interface to Relational Databases
3 CHAPTER 1 Overview of SAS/ACCESS Interface to Relational Databases About This Document 3 Methods for Accessing Relational Database Data 4 Selecting a SAS/ACCESS Method 4 Methods for Accessing DBMS Tables
Using Macros to Automate SAS Processing Kari Richardson, SAS Institute, Cary, NC Eric Rossland, SAS Institute, Dallas, TX
Paper 126-29 Using Macros to Automate SAS Processing Kari Richardson, SAS Institute, Cary, NC Eric Rossland, SAS Institute, Dallas, TX ABSTRACT This hands-on workshop shows how to use the SAS Macro Facility
Powerful and Sometimes Hard-to-find PROC SQL Features
PharmaSUG 2011 Paper HW04 Powerful and Sometimes Hard-to-find PROC SQL Features Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Abstract The SQL Procedure contains many powerful
Fun with PROC SQL Darryl Putnam, CACI Inc., Stevensville MD
NESUG 2012 Fun with PROC SQL Darryl Putnam, CACI Inc., Stevensville MD ABSTRACT PROC SQL is a powerful yet still overlooked tool within our SAS arsenal. PROC SQL can create tables, sort and summarize data,
Efficiency Techniques for Beginning PROC SQL Users Kirk Paul Lafler, Software Intelligence Corporation
Paper 127-29 Efficiency Techniques for Beginning PROC SQL Users Kirk Paul Lafler, Software Intelligence Corporation Abstract PROC SQL provides SAS users with a powerful programming language that can rival
Dynamic Dashboards Using Base-SAS Software
Paper TT-01-2015 Dynamic Dashboards Using Base-SAS Software Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Abstract Dynamic interactive visual displays known as dashboards
Top Ten SAS Performance Tuning Techniques
Paper AD39 Top Ten SAS Performance Tuning Techniques Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Abstract The Base-SAS software provides users with many choices for accessing,
Integrity Constraints and Audit Trails Working Together Gary Franklin, SAS Institute Inc., Austin, TX Art Jensen, SAS Institute Inc.
Paper 8-25 Integrity Constraints and Audit Trails Working Together Gary Franklin, SAS Institute Inc., Austin, TX Art Jensen, SAS Institute Inc., Englewood, CO ABSTRACT New features in Version 7 and Version
Eliminating Tedium by Building Applications that Use SQL Generated SAS Code Segments
Eliminating Tedium by Building Applications that Use SQL Generated SAS Code Segments David A. Mabey, Reader s Digest Association Inc., Pleasantville, NY ABSTRACT When SAS applications are driven by data-generated
Using the SQL Procedure
Using the SQL Procedure Kirk Paul Lafler Software Intelligence Corporation Abstract The SQL procedure follows most of the guidelines established by the American National Standards Institute (ANSI). In
Big Data, Fast Processing Speeds Kevin McGowan SAS Solutions on Demand, Cary NC
Big Data, Fast Processing Speeds Kevin McGowan SAS Solutions on Demand, Cary NC ABSTRACT As data sets continue to grow, it is important for programs to be written very efficiently to make sure no time
Chapter 1 Overview of the SQL Procedure
Chapter 1 Overview of the SQL Procedure 1.1 Features of PROC SQL...1-3 1.2 Selecting Columns and Rows...1-6 1.3 Presenting and Summarizing Data...1-17 1.4 Joining Tables...1-27 1-2 Chapter 1 Overview of
Programming Tricks For Reducing Storage And Work Space Curtis A. Smith, Defense Contract Audit Agency, La Mirada, CA.
Paper 23-27 Programming Tricks For Reducing Storage And Work Space Curtis A. Smith, Defense Contract Audit Agency, La Mirada, CA. ABSTRACT Have you ever had trouble getting a SAS job to complete, although
Same Data Different Attributes: Cloning Issues with Data Sets Brian Varney, Experis Business Analytics, Portage, MI
Paper BtB-16 Same Data Different Attributes: Cloning Issues with Data Sets Brian Varney, Experis Business Analytics, Portage, MI SESUG 2013 ABSTRACT When dealing with data from multiple or unstructured
Using SAS With a SQL Server Database. M. Rita Thissen, Yan Chen Tang, Elizabeth Heath RTI International, RTP, NC
Using SAS With a SQL Server Database M. Rita Thissen, Yan Chen Tang, Elizabeth Heath RTI International, RTP, NC ABSTRACT Many operations now store data in relational databases. You may want to use SAS
Downloading, Configuring, and Using the Free SAS University Edition Software
PharmaSUG 2015 Paper CP08 Downloading, Configuring, and Using the Free SAS University Edition Software Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Charles Edwin Shipp,
Search and Replace in SAS Data Sets thru GUI
Search and Replace in SAS Data Sets thru GUI Edmond Cheng, Bureau of Labor Statistics, Washington, DC ABSTRACT In managing data with SAS /BASE software, performing a search and replace is not a straight
Using DATA Step MERGE and PROC SQL JOIN to Combine SAS Datasets Dalia C. Kahane, Westat, Rockville, MD
Using DATA Step MERGE and PROC SQL JOIN to Combine SAS Datasets Dalia C. Kahane, Westat, Rockville, MD ABSTRACT This paper demonstrates important features of combining datasets in SAS. The facility to
Managing Tables in Microsoft SQL Server using SAS
Managing Tables in Microsoft SQL Server using SAS Jason Chen, Kaiser Permanente, San Diego, CA Jon Javines, Kaiser Permanente, San Diego, CA Alan L Schepps, M.S., Kaiser Permanente, San Diego, CA Yuexin
Effective Use of SQL in SAS Programming
INTRODUCTION Effective Use of SQL in SAS Programming Yi Zhao Merck & Co. Inc., Upper Gwynedd, Pennsylvania Structured Query Language (SQL) is a data manipulation tool of which many SAS programmers are
OBJECT_EXIST: A Macro to Check if a Specified Object Exists Jim Johnson, Independent Consultant, North Wales, PA
PharmaSUG2010 - Paper TU01 OBJECT_EXIST: A Macro to Check if a Specified Object Exists Jim Johnson, Independent Consultant, North Wales, PA ABSTRACT This paper describes a macro designed to quickly tell
Emailing Automated Notification of Errors in a Batch SAS Program Julie Kilburn, City of Hope, Duarte, CA Rebecca Ottesen, City of Hope, Duarte, CA
Emailing Automated Notification of Errors in a Batch SAS Program Julie Kilburn, City of Hope, Duarte, CA Rebecca Ottesen, City of Hope, Duarte, CA ABSTRACT With multiple programmers contributing to a batch
An Introduction to SAS/SHARE, By Example
Paper 020-29 An Introduction to SAS/SHARE, By Example Larry Altmayer, U.S. Census Bureau, Washington, DC ABSTRACT SAS/SHARE software is a useful tool for allowing several users to simultaneously access
One problem > Multiple solutions; various ways of removing duplicates from dataset using SAS Jaya Dhillon, Louisiana State University
One problem > Multiple solutions; various ways of removing duplicates from dataset using SAS Jaya Dhillon, Louisiana State University ABSTRACT In real world, analysts seldom come across data which is in
Transferring vs. Transporting Between SAS Operating Environments Mimi Lou, Medical College of Georgia, Augusta, GA
CC13 Transferring vs. Transporting Between SAS Operating Environments Mimi Lou, Medical College of Georgia, Augusta, GA ABSTRACT Prior to SAS version 8, permanent SAS data sets cannot be moved directly
Oracle Database 10g: Introduction to SQL
Oracle University Contact Us: 1.800.529.0165 Oracle Database 10g: Introduction to SQL Duration: 5 Days What you will learn This course offers students an introduction to Oracle Database 10g database technology.
Overview. NT Event Log. CHAPTER 8 Enhancements for SAS Users under Windows NT
177 CHAPTER 8 Enhancements for SAS Users under Windows NT Overview 177 NT Event Log 177 Sending Messages to the NT Event Log Using a User-Written Function 178 Examples of Using the User-Written Function
A Method for Cleaning Clinical Trial Analysis Data Sets
A Method for Cleaning Clinical Trial Analysis Data Sets Carol R. Vaughn, Bridgewater Crossings, NJ ABSTRACT This paper presents a method for using SAS software to search SAS programs in selected directories
Utilizing Clinical SAS Report Templates Sunil Kumar Gupta Gupta Programming, Thousand Oaks, CA
Utilizing Clinical SAS Report Templates Sunil Kumar Gupta Gupta Programming, Thousand Oaks, CA ABSTRACT SAS programmers often have the responsibility of supporting the reporting needs of the Clinical Affairs
A Macro to Create Data Definition Documents
A Macro to Create Data Definition Documents Aileen L. Yam, sanofi-aventis Inc., Bridgewater, NJ ABSTRACT Data Definition documents are one of the requirements for NDA submissions. This paper contains a
Parallel Data Preparation with the DS2 Programming Language
ABSTRACT Paper SAS329-2014 Parallel Data Preparation with the DS2 Programming Language Jason Secosky and Robert Ray, SAS Institute Inc., Cary, NC and Greg Otto, Teradata Corporation, Dayton, OH A time-consuming
Physical Database Design Process. Physical Database Design Process. Major Inputs to Physical Database. Components of Physical Database Design
Physical Database Design Process Physical Database Design Process The last stage of the database design process. A process of mapping the logical database structure developed in previous stages into internal
Analyzing the Server Log
87 CHAPTER 7 Analyzing the Server Log Audience 87 Introduction 87 Starting the Server Log 88 Using the Server Log Analysis Tools 88 Customizing the Programs 89 Executing the Driver Program 89 About the
Efficient Techniques and Tips in Handling Large Datasets Shilong Kuang, Kelley Blue Book Inc., Irvine, CA
Efficient Techniques and Tips in Handling Large Datasets Shilong Kuang, Kelley Blue Book Inc., Irvine, CA ABSTRACT When we work on millions of records, with hundreds of variables, it is crucial how we
Building a Better Dashboard Using Base SAS Software
PharmaSUG 2016 Paper AD12 Building a Better Dashboard Using Base SAS Software Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Roger Muller, Data-To-Events, Indianapolis,
Performing Queries Using PROC SQL (1)
SAS SQL Contents Performing queries using PROC SQL Performing advanced queries using PROC SQL Combining tables horizontally using PROC SQL Combining tables vertically using PROC SQL 2 Performing Queries
Performance Tuning for the Teradata Database
Performance Tuning for the Teradata Database Matthew W Froemsdorf Teradata Partner Engineering and Technical Consulting - i - Document Changes Rev. Date Section Comment 1.0 2010-10-26 All Initial document
Oracle 10g PL/SQL Training
Oracle 10g PL/SQL Training Course Number: ORCL PS01 Length: 3 Day(s) Certification Exam This course will help you prepare for the following exams: 1Z0 042 1Z0 043 Course Overview PL/SQL is Oracle's Procedural
Instant SQL Programming
Instant SQL Programming Joe Celko Wrox Press Ltd. INSTANT Table of Contents Introduction 1 What Can SQL Do for Me? 2 Who Should Use This Book? 2 How To Use This Book 3 What You Should Know 3 Conventions
Improving Maintenance and Performance of SQL queries
PaperCC06 Improving Maintenance and Performance of SQL queries Bas van Bakel, OCS Consulting, Rosmalen, The Netherlands Rick Pagie, OCS Consulting, Rosmalen, The Netherlands ABSTRACT Almost all programmers
AN INTRODUCTION TO THE SQL PROCEDURE Chris Yindra, C. Y. Associates
AN INTRODUCTION TO THE SQL PROCEDURE Chris Yindra, C Y Associates Abstract This tutorial will introduce the SQL (Structured Query Language) procedure through a series of simple examples We will initially
Technical Paper. Defining an ODBC Library in SAS 9.2 Management Console Using Microsoft Windows NT Authentication
Technical Paper Defining an ODBC Library in SAS 9.2 Management Console Using Microsoft Windows NT Authentication Release Information Content Version: 1.0 October 2015. Trademarks and Patents SAS Institute
THE POWER OF PROC FORMAT
THE POWER OF PROC FORMAT Jonas V. Bilenas, Chase Manhattan Bank, New York, NY ABSTRACT The FORMAT procedure in SAS is a very powerful and productive tool. Yet many beginning programmers rarely make use
SAS PROGRAM EFFICIENCY FOR BEGINNERS. Bruce Gilsen, Federal Reserve Board
SAS PROGRAM EFFICIENCY FOR BEGINNERS Bruce Gilsen, Federal Reserve Board INTRODUCTION This paper presents simple efficiency techniques that can benefit inexperienced SAS software users on all platforms.
SQL SUBQUERIES: Usage in Clinical Programming. Pavan Vemuri, PPD, Morrisville, NC
PharmaSUG 2013 Poster # P015 SQL SUBQUERIES: Usage in Clinical Programming Pavan Vemuri, PPD, Morrisville, NC ABSTRACT A feature of PROC SQL which provides flexibility to SAS users is that of a SUBQUERY.
9.1 SAS. SQL Query Window. User s Guide
SAS 9.1 SQL Query Window User s Guide The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2004. SAS 9.1 SQL Query Window User s Guide. Cary, NC: SAS Institute Inc. SAS
More Tales from the Help Desk: Solutions for Simple SAS Mistakes Bruce Gilsen, Federal Reserve Board
More Tales from the Help Desk: Solutions for Simple SAS Mistakes Bruce Gilsen, Federal Reserve Board INTRODUCTION In 20 years as a SAS consultant at the Federal Reserve Board, I have seen SAS users make
Subsetting Observations from Large SAS Data Sets
Subsetting Observations from Large SAS Data Sets Christopher J. Bost, MDRC, New York, NY ABSTRACT This paper reviews four techniques to subset observations from large SAS data sets: MERGE, PROC SQL, user-defined
Managing very large EXCEL files using the XLS engine John H. Adams, Boehringer Ingelheim Pharmaceutical, Inc., Ridgefield, CT
Paper AD01 Managing very large EXCEL files using the XLS engine John H. Adams, Boehringer Ingelheim Pharmaceutical, Inc., Ridgefield, CT ABSTRACT The use of EXCEL spreadsheets is very common in SAS applications,
SAS/IntrNet 9.4: Application Dispatcher
SAS/IntrNet 9.4: Application Dispatcher SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2013. SAS/IntrNet 9.4: Application Dispatcher. Cary, NC: SAS
Chapter 2 The Data Table. Chapter Table of Contents
Chapter 2 The Data Table Chapter Table of Contents Introduction... 21 Bringing in Data... 22 OpeningLocalFiles... 22 OpeningSASFiles... 27 UsingtheQueryWindow... 28 Modifying Tables... 31 Viewing and Editing
FINDING ORACLE TABLE METADATA WITH PROC CONTENTS
Finding Oracle Table Metadata: When PROC CONTENTS Is Not Enough Jeremy W. Poling, B&W Y-12 L.L.C., Oak Ridge, TN ABSTRACT Complex Oracle databases often contain hundreds of linked tables. For SAS/ACCESS
FHE DEFINITIVE GUIDE. ^phihri^^lv JEFFREY GARBUS. Joe Celko. Alvin Chang. PLAMEN ratchev JONES & BARTLETT LEARN IN G. y ti rvrrtuttnrr i t i r
: 1. FHE DEFINITIVE GUIDE fir y ti rvrrtuttnrr i t i r ^phihri^^lv ;\}'\^X$:^u^'! :: ^ : ',!.4 '. JEFFREY GARBUS PLAMEN ratchev Alvin Chang Joe Celko g JONES & BARTLETT LEARN IN G Contents About the Authors
Creating HTML Output with Output Delivery System
Paper CC07 Creating HTML Output with Output Delivery System Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, CA ABSTRACT Are you looking for ways to improve the way your SAS output appears?
Normalizing SAS Datasets Using User Define Formats
Normalizing SAS Datasets Using User Define Formats David D. Chapman, US Census Bureau, Washington, DC ABSTRACT Normalization is a database concept used to eliminate redundant data, increase computational
Top Ten SAS DBMS Performance Boosters for 2009 Howard Plemmons, SAS Institute Inc., Cary, NC
Paper 309-2009 Top Ten SAS DBMS Performance Boosters for 2009 Howard Plemmons, SAS Institute Inc, Cary, NC ABSTRACT Gleaned from internal development efforts and SAS technical support, this paper tracks
SAS Views The Best of Both Worlds
Paper 026-2010 SAS Views The Best of Both Worlds As seasoned SAS programmers, we have written and reviewed many SAS programs in our careers. What I have noticed is that more often than not, people who
Paper 70-27 An Introduction to SAS PROC SQL Timothy J Harrington, Venturi Partners Consulting, Waukegan, Illinois
Paper 70-27 An Introduction to SAS PROC SQL Timothy J Harrington, Venturi Partners Consulting, Waukegan, Illinois Abstract This paper introduces SAS users with at least a basic understanding of SAS data
Tips and Tricks for Creating Multi-Sheet Microsoft Excel Workbooks the Easy Way with SAS. Vincent DelGobbo, SAS Institute Inc.
Paper HOW-071 Tips and Tricks for Creating Multi-Sheet Microsoft Excel Workbooks the Easy Way with SAS Vincent DelGobbo, SAS Institute Inc., Cary, NC ABSTRACT Transferring SAS data and analytical results
The prerelease version of SQL was called SEQUEL (for Structured English Query Language), and some people still pronounce SQL as sequel.
23 SQL The SQL proc lets you execute SQL statements that operate on SAS data. SQL, Structured Query Language, is the closest thing there is to a standard language for retrieving data from databases. SQL
Debugging Complex Macros
Debugging Complex Macros Peter Stagg, Decision Informatics It s possible to write code generated by macros to an external file. The file can t be access until the SAS session has ended. Use the options
Introduction to Proc SQL Steven First, Systems Seminar Consultants, Madison, WI
Paper #HW02 Introduction to Proc SQL Steven First, Systems Seminar Consultants, Madison, WI ABSTRACT PROC SQL is a powerful Base SAS Procedure that combines the functionality of DATA and PROC steps into
Make Better Decisions with Optimization
ABSTRACT Paper SAS1785-2015 Make Better Decisions with Optimization David R. Duling, SAS Institute Inc. Automated decision making systems are now found everywhere, from your bank to your government to
SAS Credit Scoring for Banking 4.3
SAS Credit Scoring for Banking 4.3 Hot Fix 1 SAS Banking Intelligence Solutions ii SAS Credit Scoring for Banking 4.3: Hot Fix 1 The correct bibliographic citation for this manual is as follows: SAS Institute
Katie Minten Ronk, Steve First, David Beam Systems Seminar Consultants, Inc., Madison, WI
Paper 191-27 AN INTRODUCTION TO PROC SQL Katie Minten Ronk, Steve First, David Beam Systems Seminar Consultants, Inc., Madison, WI ABSTRACT PROC SQL is a powerful Base SAS 7 Procedure that combines the
From The Little SAS Book, Fifth Edition. Full book available for purchase here.
From The Little SAS Book, Fifth Edition. Full book available for purchase here. Acknowledgments ix Introducing SAS Software About This Book xi What s New xiv x Chapter 1 Getting Started Using SAS Software
SQL Query Evaluation. Winter 2006-2007 Lecture 23
SQL Query Evaluation Winter 2006-2007 Lecture 23 SQL Query Processing Databases go through three steps: Parse SQL into an execution plan Optimize the execution plan Evaluate the optimized plan Execution
Alternative Methods for Sorting Large Files without leaving a Big Disk Space Footprint
Alternative Methods for Sorting Large Files without leaving a Big Disk Space Footprint Rita Volya, Harvard Medical School, Boston, MA ABSTRACT Working with very large data is not only a question of efficiency
DBMS Questions. 3.) For which two constraints are indexes created when the constraint is added?
DBMS Questions 1.) Which type of file is part of the Oracle database? A.) B.) C.) D.) Control file Password file Parameter files Archived log files 2.) Which statements are use to UNLOCK the user? A.)
ODBC Chapter,First Edition
1 CHAPTER 1 ODBC Chapter,First Edition Introduction 1 Overview of ODBC 2 SAS/ACCESS LIBNAME Statement 3 Data Set Options: ODBC Specifics 15 DBLOAD Procedure: ODBC Specifics 25 DBLOAD Procedure Statements
You have got SASMAIL!
You have got SASMAIL! Rajbir Chadha, Cognizant Technology Solutions, Wilmington, DE ABSTRACT As SAS software programs become complex, processing times increase. Sitting in front of the computer, waiting
Tales from the Help Desk 3: More Solutions for Simple SAS Mistakes Bruce Gilsen, Federal Reserve Board
Tales from the Help Desk 3: More Solutions for Simple SAS Mistakes Bruce Gilsen, Federal Reserve Board INTRODUCTION In 20 years as a SAS consultant at the Federal Reserve Board, I have seen SAS users make
Oracle Database: SQL and PL/SQL Fundamentals
Oracle University Contact Us: 1.800.529.0165 Oracle Database: SQL and PL/SQL Fundamentals Duration: 5 Days What you will learn This course is designed to deliver the fundamentals of SQL and PL/SQL along
Integrating SAS and Excel: an Overview and Comparison of Three Methods for Using SAS to Create and Access Data in Excel
Integrating SAS and Excel: an Overview and Comparison of Three Methods for Using SAS to Create and Access Data in Excel Nathan Clausen, U.S. Bureau of Labor Statistics, Washington, DC Edmond Cheng, U.S.
Statistics and Analysis. Quality Control: How to Analyze and Verify Financial Data
Abstract Quality Control: How to Analyze and Verify Financial Data Michelle Duan, Wharton Research Data Services, Philadelphia, PA As SAS programmers dealing with massive financial data from a variety
SAS University Edition: Installation Guide for Windows
SAS University Edition: Installation Guide for Windows i 17 June 2014 The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2015. SAS University Edition: Installation Guide
SAS/ACCESS 9.3 Interface to PC Files
SAS/ACCESS 9.3 Interface to PC Files Reference SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2011. SAS/ACCESS 9.3 Interface to Files: Reference.
Databases What the Specification Says
Databases What the Specification Says Describe flat files and relational databases, explaining the differences between them; Design a simple relational database to the third normal form (3NF), using entityrelationship
Data Presentation. Paper 126-27. Using SAS Macros to Create Automated Excel Reports Containing Tables, Charts and Graphs
Paper 126-27 Using SAS Macros to Create Automated Excel Reports Containing Tables, Charts and Graphs Tugluke Abdurazak Abt Associates Inc. 1110 Vermont Avenue N.W. Suite 610 Washington D.C. 20005-3522
