邏輯運算子¶
邏輯運算子¶
運算子 |
描述 |
範例 |
---|---|---|
|
當兩個值都為 true 時為 true |
a AND b |
|
當任一值為 true 時為 true |
a OR b |
|
當值為 false 時為 true |
NOT a |
NULL 對邏輯運算子的影響¶
如果表達式的一側或兩側為 NULL
,則 AND
比較的結果可能為 NULL
。如果 AND
運算子的至少一側為 FALSE
,則表達式評估為 FALSE
SELECT CAST(null AS boolean) AND true; -- null
SELECT CAST(null AS boolean) AND false; -- false
SELECT CAST(null AS boolean) AND CAST(null AS boolean); -- null
如果表達式的一側或兩側為 NULL
,則 OR
比較的結果可能為 NULL
。如果 OR
運算子的至少一側為 TRUE
,則表達式評估為 TRUE
SELECT CAST(null AS boolean) OR CAST(null AS boolean); -- null
SELECT CAST(null AS boolean) OR false; -- null
SELECT CAST(null AS boolean) OR true; -- true
下列表格示範了在 AND
和 OR
中處理 NULL
的方式
a |
b |
a AND b |
a OR b |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
NULL
的邏輯補數為 NULL
,如下例所示
SELECT NOT CAST(null AS boolean); -- null
下列表格示範了在 NOT
中處理 NULL
的方式
a |
NOT a |
---|---|
|
|
|
|
|
|