Nullable値を扱うための関数
isNull
引数が NULL かどうかを返します。
オペレーター IS NULL
も参照してください。
構文
エイリアス: ISNULL
。
引数
x
— 非複合データ型の値。
戻り値
x
がNULL
の場合は1
を返します。x
がNULL
でない場合は0
を返します。
例
テーブル:
クエリ:
結果:
isNullable
カラムが Nullable である場合(つまり NULL
値を許可する場合)には 1
を、その場合以外は 0
を返します。
構文
引数
x
— カラム。
戻り値
例
クエリ:
結果:
isNotNull
引数が NULL でないかどうかを返します。
オペレーター IS NOT NULL
も参照してください。
引数:
x
— 非複合データ型の値。
戻り値
x
がNULL
でない場合は1
を返します。x
がNULL
の場合は0
を返します。
例
テーブル:
クエリ:
結果:
isNotDistinctFrom
NULLに安全な比較を行います。JOIN ONセクションに NULL
値を含むJOINキーを比較するために使用されます。
この関数は、2つの NULL
値を同一とみなし、true
を返します。これは、通常の等価比較では2つの NULL
値を比較すると NULL
が返されるのとは異なります。
この関数はJOIN ONの実装に使用される内部関数です。クエリで手動で使用しないでください。
構文
引数
x
— 最初のJOINキー。y
— 2番目のJOINキー。
戻り値
x
とy
が両方ともNULL
の場合、true
を返します。- それ以外の場合、
false
を返します。
例
完全な例については、JOINキーのNULL値を参照してください。
isZeroOrNull
引数が0(ゼロ)または NULL かどうかを返します。
引数:
x
— 非複合データ型の値。
戻り値
x
が0(ゼロ)またはNULL
の場合は1
を返します。- それ以外の場合は
0
を返します。
例
テーブル:
クエリ:
結果:
coalesce
最も左の非 NULL
引数を返します。
引数:
- 任意の数の非複合データ型のパラメータ。すべてのパラメータは互換性のあるデータ型である必要があります。
戻り値
- 最初の非
NULL
引数 - すべての引数が
NULL
の場合はNULL
を返します。
例
顧客に連絡する方法が複数指定される可能性がある連絡先リストを考えます。
mail
および phone
フィールドはString型ですが、telegram
フィールドは UInt32
型なので、String型に変換する必要があります。
顧客の連絡先リストから最初の利用可能な連絡手段を取得します:
ifNull
引数が NULL
の場合に代替値を返します。
引数:
x
—NULL
チェックを行う値。alt
—x
がNULL
の場合に関数が返す値。
戻り値
x
がNULL
でない場合はx
を返します。x
がNULL
の場合はalt
を返します。
例
クエリ:
結果:
クエリ:
結果:
nullIf
両方の引数が等しい場合 NULL
を返します。
引数:
x
, y
— 比較する値。互換性のある型である必要があります。
戻り値
- 引数が等しい場合は
NULL
を返します。 - 引数が等しくない場合は
x
を返します。
例
クエリ:
結果:
クエリ:
結果:
assumeNotNull
Nullable 型の値に対して対応する非 Nullable
値を返します。元の値が NULL
の場合は任意の結果を返すことができます。ifNull
および coalesce
関数も参照してください。
引数:
x
— 元の値。
戻り値
- 入力値が
NULL
でない場合は非Nullable
型として返します。 - 入力値が
NULL
の場合は任意の値を返します。
例
テーブル:
クエリ:
結果:
クエリ:
結果:
toNullable
引数の型を Nullable
に変換します。
引数:
x
— 非複合データ型の値。
戻り値
- 入力値だが、
Nullable
型として返します。
例
クエリ:
結果:
クエリ:
結果: