*
(星號符號) 運算符
適用於: Databricks SQL Databricks Runtime
傳回 multiplier
乘以 multiplicand
。
語法
multiplier * multiplicand
引數
multiplier
:數值或 INTERVAL 運算式。multiplicand
:數值表達式或 INTERVAL 運算式。
您不一定為這兩個自變數指定 INTERVAL。
傳回
- 如果 和
multiplicand
都是multiplier
DECIMAL,則結果為 DECIMAL。 - 如果
multiplier
或multiplicand
是 INTERVAL,則結果會是相同的類型。 - 如果 和
multiplicand
都是multiplier
整數數值類型,則結果會是兩種類型中較大的一個。 - 在其他所有情況下,結果都是 DOUBLE。
multiplier
如果 或 multiplicand
為 0,運算符會傳回 0。
如果乘法的結果超出結果類型的系結,就會 引發ARITHMETIC_OVERFLOW 錯誤。
使用 try_multiply 在溢位時傳回 NULL
。
警告
在 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