*
(アスタリスク記号) 演算子
適用対象: Databricks SQL Databricks Runtime
multiplier
に multiplicand
を乗算したものを返します。
構文
multiplier * multiplicand
引数
multiplier
: 数値または INTERVAL 式。multiplicand
: 数値式または INTERVAL 式。
両方の引数に INTERVAL を指定しない場合があります。
戻り値
multiplier
とmultiplicand
の両方が DECIMAL の場合、結果は DECIMAL になります。multiplier
またはmultiplicand
が INTERVAL の場合、結果は同じ型になります。multiplier
とmultiplicand
の両方が整数数値型である場合、結果は 2 つの型の大きい方となります。- それ以外の場合、結果は DOUBLE 値になります。
multiplier
または multiplicand
のいずれかが 0 の場合、演算子は 0 を返します。
乗算の結果が結果型のバインドの外にある場合は、ARITHMETIC_OVERFLOW エラーが発生します。
オーバーフロー時に NULL
を返すには try_multiply を使用します。
警告
Databricks Runtime で、spark.sql.ansi.enabled が false
の場合、整数型の境界外にある場合結果は "ラップされ"、小数型の場合結果は NULL
になります。
例
> SELECT 3 * 2;
6
> SELECT 2L * 2L;
4L
> SELECT INTERVAL '3' YEAR * 3;
9-0
> SELECT 100Y * 100Y;
Error: ARITHMETIC_OVERFLOW