略記組み合わせ比較条件

単純比較条件または否定単純比較条件を、論理結合子で組み合わせて連続して記述する場合、後続の比較条件に、先行する比較条件と共通の左辺または左辺および関係演算子が含まれ、かつ連続した記述内でかっこを使用していなければ、最初に登場する比較条件以外は略記できる。記述方法には次の 2 通りがある。

一般形式


syntax

説明:

一連の比較条件内で、上記の両方の略記形式を使用できる。略記した場合、直前で明記した左辺が、省略した左辺に補完され、直前で明記した関係演算子が、省略した関係演算子を補完するように処理される。そのような暗黙的な補完の結果は、表「関係演算子」の規則に準拠する必要がある。この処理では省略した左辺または関係演算子 (あるいはその両方) が補完され、組み合わせ条件内で略記しない単純条件を検出すると終了する。

OSVS 条件が評価される順序を、かっこを使用することによって変更できる (下記の例を参照)。

略記組み合わせ比較条件内で「NOT」を使用した場合、次のとおり解釈される。

  1. ANS85 NOT の直後に GREATER、>、LESS、<、EQUAL、または = が続く場合 (GREATER THAN OR EQUAL TO、>=、LESS THAN OR EQUAL TO、および <= は除く)、NOT は関係演算子の一部と解釈される。
  2. 上記以外の場合、「NOT」は論理演算子として解釈されるため、否定比較条件内で暗黙的に左辺または関係演算子が補完される。

略記組み合わせ比較条件と否定組み合わせ比較条件、およびそれに相当する略さない形式の例を以下に示す。

略記組み合わせ比較条件 略さない形式
a > b AND NOT < c OR d ((a > b) AND (a NOT < c)) OR (a NOT < d)
a NOT EQUAL b OR c (a NOT EQUAL b) OR (a NOT EQUAL c)
NOT a = b OR c (NOT (a = b)) OR (a = c)
NOT (a GREATER b OR < c) NOT ((a GREATER b) OR (a < c))
NOT (a NOT > b AND c AND NOT d NOT ((((a NOT > b) AND (a NOT > c)) AND (NOT (a NOT > d))))
x > a OR y AND z x > a OR (x > y AND x > z)
x > a OR (y AND z) x > a OR (x > y AND x > z)
x > (a OR y) AND z (x > a OR x > y) AND x > z
x ( = a OR > b) x = a OR x > b
x = a AND ( > b OR < z ) x = a AND ( x > b OR x < z )
a EQUAL b OR NOT GREATER OR EQUAL c OR d (a EQUAL b) OR (NOT (a GREATER OR EQUAL c)) OR (a GREATER OR EQUAL d)
a EQUAL b OR NOT >=c OR d (a EQUAL b) OR (NOT (a >= c)) OR (a >= d)