Beam ZetaSQL 条件式
このページでは、Beam ZetaSQLでサポートされているZetaSQLスカラー関数について説明します。
構文 | 入力データ型 | 結果データ型 | 説明 |
---|
CASE expr
WHEN value THEN result
[WHEN ...]
[ELSE else_result]
END | expr とvalue :任意の型 | result とelse_result :入力型のスーパータイプ。 | expr を後続の各WHEN 句の値と比較し、この比較がtrueを返す最初の結果を返します。残りのWHEN 句とelse_result は評価されません。すべてのWHEN 句でexpr = value の比較がfalseまたはNULL を返す場合、else_result が存在する場合はそれを返し、存在しない場合はNULL を返します。expr とvalue 式は、暗黙的に共通のスーパータイプに強制型変換できる必要があります。等価比較は、強制型変換された値に対して行われます。result とelse_result の式は、共通のスーパータイプに強制型変換できる必要があります。 |
CASE
WHEN cond1 THEN result
[WHEN cond2...]
[ELSE else_result]
END | cond : BOOL | result とelse_result :入力型のスーパータイプ。 | 後続の各WHEN 句の条件cond を評価し、条件がtrueになる最初の結果を返します。残りのWHEN 句とelse_result は評価されません。すべての条件がfalseまたはNULL の場合、else_result が存在する場合はそれを返し、存在しない場合はNULL を返します。result とelse_result の式は、暗黙的に共通のスーパータイプに強制型変換できる必要があります。 |
COALESCE(expr1, ..., exprN) | 任意の型 | 入力型のスーパータイプ | 最初のNULLでない式の値を返します。残りの式は評価されません。すべての入力式は、暗黙的に共通のスーパータイプに強制型変換できる必要があります。 |
IF(cond, true_result, else_result) | cond : BOOL | true_result とelse_result :任意の型。 | cond がtrueの場合、true_result を返し、それ以外の場合はelse_result を返します。cond がtrueの場合、else_result は評価されません。cond がfalseまたはNULL の場合、true_result は評価されません。true_result とelse_result は、共通のスーパータイプに強制型変換できる必要があります。 |
IFNULL(expr, null_result) | 任意の型 | 任意の型または入力型のスーパータイプ。 | expr がNULL の場合、null_result を返します。それ以外の場合は、expr を返します。expr がNULL でない場合、null_result は評価されません。expr とnull_result は、暗黙的に共通のスーパータイプに強制型変換できる必要があります。COALESCE(expr, null_result) の同義語。 |
NULLIF(expression, expression_to_match) | 任意の型TまたはTのサブタイプ | 任意の型TまたはTのサブタイプ | expression = expression_to_match がtrueの場合、NULL を返し、それ以外の場合はexpression を返します。expression とexpression_to_match は、暗黙的に共通のスーパータイプに強制型変換できる必要があります。等価比較は、強制型変換された値に対して行われます。 |