Chapter 11
WHERE-Expression Processing
Definition of WHERE-Expression Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Where to Use a WHERE Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Syntax of WHERE Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
WHERE Expression Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Specifying an Operand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Specifying an Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Combining Expressions By Using Logical Operators . . . . . . . . . . . . . . . . . . . . . . . 168
Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Processing Compound Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Using Parentheses to Control Order of Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . 169
Improving Performance of WHERE Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Processing a Segment of Data That Is Conditionally Selected . . . . . . . . . . . . . . . . 170
Applying FIRSTOBS= and OBS= Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Applying FIRSTOBS= and OBS= to a Subset of Data . . . . . . . . . . . . . . . . . . . . . 171
Processing a SAS View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Deciding Whether to Use a WHERE Expression or a Subsetting IF Statement . 173
Definition of WHERE-Expression Processing
WHERE-expression processing
enables you to conditionally select a subset of observations, so that SAS processes
only the observations that meet a set of specified conditions. For example, if you
have a SAS data set that contains sales records, you might want to print just the
subset of observations for which the sales are greater than $300,000 but less than
$600,000. In addition, WHERE-expression processing can improve efficiency of a
request. For example, if a WHERE expression can be optimized with an index, it is
not necessary for SAS to read all observations in the data set in order to perform the
request.
WHERE expression
defines a condition that selected observations must satisfy in order to be processed.
You can have a single WHERE expression, referred to as a simple expression, such
as the following:
where sales gt 600000;
157

Get SAS 9.4 Language Reference, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.