AND 和 OR 邏輯運算子

可以使用邏輯運算子 ANDOR,以邏輯方式結合兩個以上關係。 邏輯運算子會根據下列規則來結合關係:

  • The ampersand (&) symbol is a valid substitute for the logical operator AND. 垂直線 (|) 是邏輯運算子 OR的有效替代。
  • 只能使用一個邏輯運算子來結合兩個關係。 不過,多個關係可以結合成複雜的邏輯表示式。
  • 不論用來建置邏輯表示式的關係及邏輯運算子數目為何,結果都是 true、false 或因遺漏值而不確定。
  • 不能隱含運算子或表示式。 例如, X EQ 1 OR 2 不合法; 您必須指定 X EQ 1 OR X EQ 2
  • ANYRANGE 函數可用來簡化複式表示式。

AND . 兩個關係都必須為 true ,複式表示式才會為 true。

. 如果任一關係為 true ,則複式表示式為 true。

下表列出 ANDOR 組合的結果。

表 1. 邏輯結果
表示式 結果 表示式 結果

true AND true

= true

true 或 true

= true

true AND false

= false

true 或 false

= true

false AND false

= false

false 或 false

= false

true AND missing

遺漏

true OR missing

= true *

遺漏 AND 遺漏

遺漏

遺漏 OR 遺漏

遺漏

false AND missing

= false *

false OR missing

遺漏

* 可使用不完整資訊來評估結果的表示式。 如需相關資訊,請參閱主題 邏輯表示式中遺漏值

範例

DATA LIST FREE /var1 var2 var3.
BEGIN DATA
1 1 1
1 2 1
1 2 3
4 2 4
END DATA.
SELECT IF var1 = 4 OR ((var2 > var1) AND (var1 <> var3)).
  • 將會選取符合第一個條件 (var1 = 4) 的任何觀察值,在此範例中,這只是最後一個觀察值。
  • 也會選取符合第二個條件的任何觀察值。 在此範例中,只有第三個觀察值符合此條件,其中包含兩個準則: var2 大於 var1var1 不等於 var3