Advanced SAS Programming

Course code : SASPA1

Duration        : 30 Hours

This course enables you to be at upper echelon of SAS programmers who demonstrate a high level of proficiency in SAS programming expertise. This is a continuation course of Base SAS programming and candidates will be taught to apply various advanced features in SAS to enable them to work on enterprise scale applications.


  • Those who have a need to learn and perform advanced SAS programming techniques
  • Candidates aspiring for a career in SAS analytics
  • Candidates aspiring for obtaining SAS Advanced Programmer certification
  • Prerequisites

    Knowledge in base SAS programming functionality required.


  • Writing and interpreting SAS SQL and SQL code
  • Using advanced data step programming statements and efficiency techniques to solve complex problems
  • Creating and using the SAS MACRO facility
  • Demonstrate the use of advanced data look-up methods such as arrays, hash objects, formats and merging
  • Ability to do bench marking
  • Ability to create user defined functions
  • Ability to reduce or optimize computing resource requirements
  • Course Overview

    • Course outline
    • Course objectives
    • An overview of exercises and case study

    PART 1 Accessing Data Using SQL

    • Generate detail reports by working with a single table, joining tables, or using set operators in the SQL procedure
    • Generate summary reports by working with a single table, joining tables, or using set operators in the SQL procedure
    • Construct sub-queries and in-line views within an SQL procedure step
    • Compare solving a problem using the SQL procedure versus using traditional SAS programming techniques
    • Access Dictionary Tables using the SQL procedure
    • Lab exercises

    PART 2 Macro Processing

    • Create and use user-defined and automatic macro variables within the SAS Macro Language
    • Automate programs by defining and calling macros using the SAS Macro Language
    • Understand the use of macro functions
    • Use various system options that are available for macro debugging and displaying values of user-defined and automatic macro variables in the SAS log
    • Create data-driven programs using SAS Macro Language
    • Lab exercises

    PART 3 Advanced Programming Techniques

    • Demonstrate the use of advanced data look-up techniques such as array processing, hash objects, formats, and merging
    • Reduce computing resource requirements by controlling the space required to store SAS data sets
    • Use the FCMP procedure to create a user-defined function
    • Perform effective benchmarking
    • Use SAS indexes
    • Compare techniques to eliminate duplicate data
    • Lab exercises

    PART 4 Case Study and Project work

    • Implementing lessons learnt so far to a real-world application

    Course Review

    Exam Preparation (Optional)