%DOmacro-variable=expression %TO expression<%BY expression>;
|
%DO %UNTIL(expression);
|
%DO %WHILE(expression);
|
%EVAL (expression);
|
%IF expression %THEN statement;
|
%QSCAN(argument,expression<,delimiters>)
|
%QSUBSTR(argument,expression<,expression>)
|
%SCAN(argument,expression,<delimiters>)
|
%SUBSTR(argument,expression<,expression>)
|
%SYSEVALF(expression,conversion-type)
|
%let A=2; %let B=5; %let operator=+; %put The result of &A &operator &B is %eval(&A &operator &B).;
The result of 2 + 5 is 7.
演算子
|
ニーモニック
|
優先順位
|
定義
|
例
|
---|---|---|---|---|
**
|
1
|
累乗
|
2**4
|
|
+
|
2
|
正の値を表す接頭語
|
+(A+B)
|
|
-
|
2
|
負値を表す接頭語
|
-(A+B)
|
|
¬^~
|
NOT
|
3
|
論理否定*
|
NOT A
|
*
|
|
4
|
乗算
|
A*B
|
/
|
|
4
|
除算
|
A/B
|
+
|
|
5
|
加算
|
A+B
|
-
|
5
|
減算
|
A-B
|
|
<
|
LT
|
6
|
より小さい
|
A<B
|
<=
|
LE
|
6
|
以下
|
A<=B
|
=
|
EQ
|
6
|
等しい
|
A=B
|
#
|
IN
|
6
|
リスト内のいずれかと等しい**
|
A#B C D E
|
¬= ^= ~=
|
NE
|
6
|
等しくない*
|
A NE B
|
>
|
GT
|
6
|
より大きい
|
A>B
|
>=
|
GE
|
6
|
以上
|
A>=B
|
&
|
AND
|
7
|
論理積
|
A=B & C=D
|
|
|
OR
|
8
|
論理和
|
A=B | C=D
|
* 使用するシンボルはキーボードによって異なります。
** リスト要素のデフォルトの区切り文字は空白です。詳細については、MINDELIMITER=システムオプションを参照してください。
** IN (#)演算子を使用する前に、MINOPERATORシステムオプションを参照してください。
** IN演算子を使用する場合、両方のオペランドが値を含んでいる必要があります。オペランドにnull値が含まれていると、エラーが発生します。
|