に最終更新
NULLIF
説明
二つの入力値が等しい場合は NULL、異なる場合は最初の入力値を返します。この関数は、次の CASE WHEN 式と同等です。
CASE
WHEN <expr1> = <expr2> THEN NULL
ELSE <expr1>
END
構文
NULLIF(<expr1>, <expr2>)
パラメータ
<expr1>: 比較する最初の入力値。サポートされる型は以下の使用上の注意を参照してください。<expr2>: 最初の入力値と比較する二番目の値。サポートされる型は以下の使用上の注意を参照してください。
使用上の注意
パラメータでサポートされる型:
- Boolean
- 数値型(TinyInt、SmallInt、Int、BigInt、LargeInt、Float、Double、Decimal)
- 日付型(Date、DateTime、TimestampNs、Time)
- 文字列型(String、VARCHAR、CHAR)
戻り値
<expr1>と<expr2>が等しい場合はNULLを返します。- それ以外の場合は
<expr1>の値を返します。
例
- 例 1
SELECT NULLIF(1, 1);+--------------+
| NULLIF(1, 1) |
+--------------+
| NULL |
+--------------+ - 例 2
SELECT NULLIF(1, 0);+--------------+
| NULLIF(1, 0) |
+--------------+
| 1 |
+--------------+