* (アスタリスク記号) 演算子

適用対象: 「はい」チェックマークがオンDatabricks SQL 「はい」チェックマークがオン Databricks Runtime

multipliermultiplicand を乗算して返します。

構文

multiplier * multiplicand

引数

  • multiplier: 数値式または INTERVAL 式。
  • multiplicand: 数値式または INTERVAL 式。

両方の引数に INTERVAL を指定することはできません。

戻り値

  • multipliermultiplicandの両方がDECIMAL場合、結果はDECIMAL
  • multiplierまたはmultiplicandINTERVALの場合、結果は同じ型になります。
  • multipliermultiplicand の両方が整数数値型である場合、結果は 2 つの型の大きい方となります。
  • それ以外の場合、結果は DOUBLEになります。

multiplier または multiplicand のいずれかが 0 の場合、演算子は 0 を返します。

乗算の結果が結果の型をオーバーフローした場合、Azure Databricksは ARITHMETIC_OVERFLOW または INTERVAL_ARITHMETIC_OVERFLOW エラーを発生させます。

オーバーフロー時に を返すには NULL を使用します。

警告

Databricks Runtime で 、spark.sql.ansi.enabledfalseされている場合、結果は整数型の範囲外の場合は "ラップ" され、結果は小数型に対して NULL されます。

一般的なエラー状態

> SELECT 3 * 2;
 6

> SELECT 2L * 2L;
 4L

> SELECT INTERVAL '3' YEAR * 3;
 9-0

> SELECT 100Y * 100Y;
 Error: ARITHMETIC_OVERFLOW