適用於:
Databricks SQL
Databricks Runtime
傳回 dividend 除以 divisor。
語法
dividend / divisor
引數
-
dividend:數值或INTERVAL表達式。 -
divisor:數值表達式。
傳回
如果 與 dividenddivisor都是 DECIMAL ,結果為 DECIMAL。
如果 dividend 是年月間隔,則結果為 INTERVAL YEAR TO MONTH。
如果 dividend 是日時間間隔,則結果為 INTERVAL DAY TO SECOND。
在其他所有情況下,為 DOUBLE。
如果divisor為0,Azure Databricks會產生DIVIDE_BY_ZERO錯誤。
若dividend為區間,divisor為0,Azure Databricks會產生INTERVAL_DIVIDED_BY_ZERO誤差。
若結果超出該結果型別,Azure Databricks會產生 ARITHMETIC_OVERFLOW 或 INTERVAL_ARITHMETIC_OVERFLOW 錯誤。
用 try_divide 來回去 NULL 吧。
注意
在 Databricks Runtime 中,如果 spark.sql.ansi.enabled 為 false,函式會 NULL 傳回而不是零除錯誤。
常見錯誤條件
範例
> SELECT 3 / 2;
1.5
> SELECT 2L / 2L;
1.0
> SELECT INTERVAL '3:15' HOUR TO MINUTE / 3
0 01:05:00.000000
> SELECT 3 / 0;
Error: DIVIDE_BY_ZERO