All SAS exams
SAS A00-231: SAS Certified Specialist: Base Programming Using SAS 9.4
What the A00-231 exam covers and what it costs, with a free 30-question practice test and an explanation for every answer.
- Exam fee
- $180 USD
- Duration
- 135 minutes
- Questions on the exam
- 40-45
- Passing score
- 725 (scale 200-1000)
- Level
- Associate
- Topic areas
- 4
- Free practice questions
- 30
- Full question bank
- 112 questions
What the A00-231 exam covers
The topic areas in our A00-231 question bank, with each one's share of the 112 practice questions.
| Topic | Share | Questions |
|---|---|---|
| Manage Data | 41% | 46 |
| Access and Create Data Structures | 23% | 26 |
| Error Handling | 18% | 20 |
| Generate Reports and Output | 18% | 20 |
A00-231 cost and format
| Exam code | A00-231 |
|---|---|
| Certification | SAS Certified Specialist: Base Programming Using SAS 9.4 |
| Vendor | SAS |
| Level | Associate |
| Status | Active |
| Delivery | Pearson VUE |
Last checked November 10, 2026 against the official SAS exam page.
A00-231 sample questions
The first 5 questions from the free practice test. Open a question to see the answer and why it is right.
Question 1Manage Data
A customer file contains several rows for the same customer ID, and the duplicate rows differ in their address or phone fields. The team needs exactly one row per customer ID in the output. Which PROC SORT keyword or option, used with BY customer_id, achieves this?
- ANODUP, which removes only rows that are identical in every variable
- BNODUPKEY, which keeps one row for each unique value of the BY variable
- CDESCENDING, which sorts the BY variable from largest to smallest value
- DOUT=, which names the data set that receives the sorted rows
Show answer and explanationHide answer
Correct answer: BNODUPKEY checks only the BY variables, so one row per customer ID is kept even when other fields differ. NODUP compares every variable so rows with different addresses or phones would both remain, DESCENDING changes the sort direction, and OUT= only names the output data set.
Question 2Access and Create Data Structures
A programmer needs an intermediate data set that is used only during the current SAS session and must disappear automatically when the session ends. Which approach meets this requirement?
- AExport the results to a comma-delimited file and reopen it in the next session
- BCreate the data set with a one-level name so that it is written to the WORK library
- CStore the data set in a permanent library that was assigned with a LIBNAME statement
- DStore the data set in the SASHELP library so that it is removed when the session ends
Show answer and explanationHide answer
Correct answer: BThe WORK library is the default temporary library, and its data sets are deleted when the SAS session ends. A permanent library keeps its data sets after the session, an exported CSV file is a copy outside SAS, and SASHELP holds SAS-supplied sample data rather than session output.
Question 3Error Handling
A DATA step assigns grades with three separate IF statements in this order: if score >= 90 then grade = 'A'; if score >= 80 then grade = 'B'; if score >= 70 then grade = 'C';. A student with a score of 95 ends up with grade C. Which change corrects this logic error?
- AChange each >= operator to an equals sign so that only exact scores match a grade
- BMove the grade assignments into a separate PROC step that runs after the DATA step
- CUse IF-THEN with ELSE IF so that only the first true condition assigns a grade
- DDeclare grade as a numeric variable with a LENGTH statement placed before the first IF
Show answer and explanationHide answer
Correct answer: CEach separate IF is tested independently, so a score of 95 satisfies all three conditions and the last assignment, C, overwrites the A. An IF-THEN with ELSE IF stops at the first true condition and gives 95 the grade A, while changing the operators, moving code to another step, or changing the data type does not stop the overwriting.
Question 4Generate Reports and Output
A report lists customer names and balances with PROC PRINT, but the printed output should not show the Obs column on the left. Which option meets this requirement?
- ANOOBS, which suppresses the observation number column in PROC PRINT output
- BNOCUM, which suppresses the cumulative columns in a frequency table
- CNODUPKEY, which removes rows that share the same BY values in PROC SORT
- DNOPERCENT, which suppresses the percent columns in a frequency table
Show answer and explanationHide answer
Correct answer: ANOOBS in PROC PRINT suppresses the observation-number column. NOCUM and NOPERCENT are PROC FREQ options for frequency tables, and NODUPKEY is a PROC SORT option, so none of them affects the Obs column in PROC PRINT.
Question 5Manage Data
A DATA step contains the statement total + amount; to build a running total of the amount variable. Which statement about this sum statement is correct?
- AIt can be used only inside a PROC step, and it cannot be placed in a DATA step
- BIt resets total to missing at the start of every observation, so a RETAIN statement is always required
- CIt retains total across observations, starts it at zero, and skips missing values of amount
- DIt works only when the data set is sorted by a BY variable, otherwise SAS stops the step
Show answer and explanationHide answer
Correct answer: CThe sum statement automatically retains its variable across iterations, initializes it to zero, and ignores missing values in the expression. It does not need a BY variable or a RETAIN statement, and it is a DATA step statement.
How to prepare for A00-231
- Read the official SAS outline first (exam page), so you know exactly what is in scope.
- Give the most time to Manage Data and Access and Create Data Structures: together they make up 64% of the questions.
- Take the free 30-question practice test and note which topics you miss.
- Go back to the weak topics, then test again. A practice score shows where to study; it does not predict your exam result.
Full A00-231 question bank
All 112 questions with answers and explanations, as a PDF, an online practice exam, or both.
The full 112-question bank for A00-231 is in final review. The free practice test is open now.
Start the free practice testA00-231 FAQ
Related exams
| Exam | Vendor | Level |
|---|---|---|
| Professional Data Engineer | Google Cloud | Professional |
| DEA-C01: AWS Certified Data Engineer - Associate | AWS | Associate |
| DA0-002: CompTIA Data+ | CompTIA | Associate |
| Associate Data Practitioner | Google Cloud | Associate |
| DP-300: Administering Microsoft Azure SQL Solutions | Microsoft | Associate |
| DP-750: Implementing Data Engineering Solutions Using Azure Databricks | Microsoft | Associate |