- SAS SQL 1: Essentials
- SAS Macro Language 2: Essentials
- SAS Programming 3: Advanced Techniques and Efficiencies
SAS SQL 1: Essentials
1. Introduction
- Overview of SAS Foundation
- Course logistics
- Course data files
- Introducing the Structured Query Language
2. Basic Queries
- Overview of the SQL procedure
- Specifying columns
- Specifying rows
3. Displaying Query Results
- Presenting data
- Summarizing data
4. SQL Joins
- Introduction to SQL joins
- Inner joins
- Outer joins
- Complex SQL joins
5. Subqueries
- Noncorrelated subqueries
- In-line views
6. Set Operators
- Introduction to set operators
- UNION operator
- OUTER UNION operator
- EXCEPT operator
- INTERSECT operator
7. Creating Tables and Views
- Creating tables with the SQL procedure
- Creating views with the SQL procedure
8. Advanced PROC SQL Features
- Dictionary tables and views
- Using SQL procedure options
- Interfacing PROC SQL with the macro language
9. Learning More
- SAS resources
- Beyond this course
10. Self-Study Topics
- Correlated subqueries
- Introduction to indexes
- Creating indexes
- Maintaining tables with the SQL procedure
- Integrity constraints
- Creating and using macro variables in PROC SQL
SAS Macro Language 2: Essentials
1. Introduction
- Overview of SAS Foundation
- Course logistics
- Purpose of the macro facility
- Program flow
2. Macro Variables
- Introduction to macro variables
- Automatic macro variables
- Macro variable references
- User-defined macro variables
- Delimiting macro variable references
- Macro functions
3. Macro Definitions
- Defining and calling a macro
- Macro parameters
4. DATA Step and SQL Interfaces
- Creating macro variables in the DATA step
- Indirect references to macro variables
- Creating macro variables in SQL
5. Macro Programs
- Conditional processing
- Parameter validation
- Iterative processing
- Global and local symbol tables
6. Learning More
- SAS resources
- Beyond this course
7. Supplemental Materials
- Program flow
SAS Programming 3: Advanced Techniques and Efficiencies
1. Introduction
- Overview of SAS Foundation
- Course logistics
- Creating the course data
2. Measuring Efficiencies
- Measuring efficiencies
3. Controlling I/O Processing and Memory
- SAS DATA step processing
- Controlling I/O
- Using SAS views
- Reducing the length of numeric variables
- Compressing SAS data sets
4. Accessing Observations
- Creating a sample data set
- Creating an index
- Using an index
5. Using DATA Step Arrays
- Introduction to lookup techniques
- Using one-dimensional arrays
- Using multidimensional arrays
- Loading a multidimensional array from a SAS data set
6. Using DATA Step Hash and Hiter Objects
- Introduction
- Using hash object methods
- Loading a hash object with data from a SAS data set
- Using the DATA step hiter object
7. Combining Data Horizontally
- DATA step merges and SQL procedure joins
- Using an index to combine data
- Combining summary and detail data
- Combining data conditionally
8. Expert Programmer Techniques
- Creating user-defined functions
- The experts' FORMAT procedure
9. Learning More
- Introduction