About this Course

19,965 recent views
Shareable Certificate
Earn a Certificate upon completion
100% online
Start instantly and learn at your own schedule.
Course 1 of 3 in the
Flexible deadlines
Reset deadlines in accordance to your schedule.
Approx. 23 hours to complete
Subtitles: English
Shareable Certificate
Earn a Certificate upon completion
100% online
Start instantly and learn at your own schedule.
Course 1 of 3 in the
Flexible deadlines
Reset deadlines in accordance to your schedule.
Approx. 23 hours to complete
Subtitles: English

Offered by

SAS logo


Syllabus - What you will learn from this course


Week 1

1 hour to complete

Course Overview and Data Setup

1 hour to complete
1 video (Total 1 min), 4 readings
1 video
4 readings
Learner Prerequisites10m
Using Forums and Getting Help5m
Access SAS Software for this Course10m
Set Up Data for This Course30m
1 hour to complete


1 hour to complete
8 videos (Total 13 min), 1 reading, 2 quizzes
8 videos
What Is SQL?3m
What Is PROC SQL?1m
PROC SQL Syntax1m
Exploring Tables1m
Demo: Exploring the Customer Table2m
SQL Options36s
Comparing SQL and the DATA Step1m
1 reading
Learning More (Optional)10m
2 practice exercises
Activity 1.0110m
Essentials Review Quiz30m

Week 2

6 hours to complete

PROC SQL Fundamentals

6 hours to complete
29 videos (Total 56 min), 5 readings, 18 quizzes
29 videos
Filtering Rows Using the WHERE Clause4m
Special WHERE Operators: Missing Values52s
Additional Special WHERE Operators1m
Sorting the Output with the ORDER BY Clause33s
Ordering Columns by Position17s
Enhancing Reports4m
Demo: Creating Simple Reports4m
Creating a New Column1m
Subsetting Calculated Values43s
Assigning Values Conditionally with the CASE Expression1m
Demo: Assigning Values Conditionally2m
Eliminating Duplicate Rows with the DISTINCT Keyword54s
Summarizing Data1m
Demo: Using Summary Functions to Analyze a Table3m
Summarizing Data Using the COUNT Function20s
Grouping Data2m
Demo: Analyzing Groups of Data4m
Summarizing Date and Time Data1m
Counting Rows Using a Boolean Expression37s
Demo: Summarizing Data Using a Boolean Expression2m
Creating Tables1m
Creating Tables from a Query1m
Creating Table Structures1m
Inserting Rows into Tables2m
Dropping Tables in PROC SQL10s
Demo: Using DICTIONARY Tables5m
5 readings
Date, Time, and Datetime Values10m
Commonly Used Summary Functions10m
Additional Statements to Maintain Tables10m
SQL Order of Execution Cheat Sheet (optional)1m
Learning More (optional)1m
18 practice exercises
Activity 2.0110m
Activity 2.0210m
Activity 2.0310m
Activity 2.0410m
Activity 2.0510m
Level 1 Practice: Querying a Table20m
Level 2 Practice: Working with Datetime Values20m
Activity 2.0610m
Activity 2.0710m
Activity 2.0810m
Level 1 Practice: Eliminating Duplicates20m
Level 2 Practice: Grouping and Summarizing Data20m
Activity 2.0910m
Activity 2.1010m
Activity 2.1110m
Practice Level 1: Counting the Number of Tables in a Library20m
Practice Level 2: Counting the Number of Tables in All Libraries20m
PROC SQL Fundamentals Review Quiz30m

Week 3

4 hours to complete

SQL Joins

4 hours to complete
22 videos (Total 29 min), 3 readings, 14 quizzes
22 videos
Joining Tables2m
Types of Joins1m
Joining Two Tables with an Inner Join1m
Demo: Performing an Inner Join with PROC SQL2m
Alternative SQL Inner Join Syntax40s
Using Table Aliases39s
Matching Rows with a Natural Join1m
Selecting Data from More Than Two Tables39s
Demo: Performing an Inner Join with Four Tables2m
Handling Missing Values1m
Creating Non-Equijoins47s
SQL Outer Joins1m
Performing Left and Right Outer Joins1m
Joining Two Tables with a Full Join42s
Demo: Performing a Full Join with Proc SQL2m
Identifying Nonmatching Rows1m
Using Reflexive Joins1m
Demo: Performing a Reflexive Join2m
Using Functions to Join Tables39s
Using Functions to Join When Column Types Are Different17s
Converting Column Values with Functions1m
3 readings
Table Relationships10m
SQL Join Summary Cheat Sheet (optional)1m
Learning More (optional)1m
14 practice exercises
Activity 3.0110m
Activity 3.0210m
Activity 3.0310m
Activity 3.0410m
Practice Level 1: Performing an Inner Join20m
Practice Level 2: Joining on Inequality20m
Activity 3.0510m
Activity 3.0610m
Practice Level 1: Using Outer Joins to Find Nonmatches20m
Practice Level 2: Using Outer Joins to Summarize Data20m
Activity 3.0710m
Activity 3.0810m
Activity 3.0910m
SQL Joins Review30m

Week 4

4 hours to complete


4 hours to complete
19 videos (Total 33 min), 2 readings, 12 quizzes
19 videos
What Is a Subquery?1m
Using a Subquery in the WHERE Clause2m
Demo: Using a Subquery That Returns a Single Value2m
Using a Subquery in the HAVING Clause1m
Subquery That Returns Multiple Values1m
Demo: Using a Subquery That Returns Multiple Values2m
Using the ANY Keyword1m
Using Correlated Subqueries1m
Using Temporary Tables1m
What Is an In-Line View?34s
Demo: Using an In-Line View3m
Creating a View2m
Making a View Portable2m
Using a Subquery in the SELECT Clause45s
Remerging Summary Statistics in PROC SQL1m
Demo: Remerging Summary Statistics2m
Controlling Remerging1m
Remerging GROUP BY Summary Statistics1m
2 readings
Advantages/Disadvantage of Views10m
Learning More (optional)1m
12 practice exercises
Activity 4.0110m
Activity 4.0215m
Activity 4.0310m
Practice Level 1: Using a Subquery That Returns a Single Value20m
Practice Level 2: Using a Subquery with Multiple Functions20m
Activity 4.0410m
Practice Level 1: Using an In-Line View20m
Practice Level 2: Building a Complex Query Using In-Line Views20m
Activity 4.0510m
Practice Level 1: Remerging Summary Statistics20m
Practice Level 2: Using a Subquery in the SELECT Clause with an In-Line Views20m
Subqueries Review30m

About the SAS Advanced Programmer Professional Certificate

When you complete this professional certificate program, you will have experience in SAS programming using SAS 9 and will be able to process data using Structured Query Language in the SAS environment, use the SAS macro facility to design, write, and debug dynamic macro programs, and use advanced DATA step techniques and procedures to manipulate data. These skills prepare you for the SAS Advanced Programming Professional certification exam....
SAS Advanced Programmer

Frequently Asked Questions

  • Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:

    • The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.
    • The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
  • When you enroll in the course, you get access to all of the courses in the Certificate, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

  • If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.

More questions? Visit the Learner Help Center.