类别:

数值函数

DIV0NULL

像除法运算符 (/) 一样执行除法,但当除数为 0 或 NULL 时返回 0(而不是报告错误或返回 NULL)。

另请参阅:

DIV0

语法

DIV0NULL( <dividend> , <divisor> )
Copy

实参

dividend

计算结果为被除数的数值表达式。

divisor

计算结果为除数的数值表达式。

返回

商。如果除数为 0 或 NULL,则函数返回 0。

示例

如以下示例所示,DIV0NULL 函数像除法运算符 (/) 一样执行除法:

SELECT 1/2;

+----------+
|      1/2 |
|----------|
| 0.500000 |
+----------+
Copy
SELECT DIV0NULL(1, 2);

+----------------+
| DIV0NULL(1, 2) |
|----------------|
|       0.500000 |
+----------------+
Copy

与除法运算符不同,当除数为 0 或 NULL 时,DIV0NULL 返回 0(而不是报告错误或返回 NULL)。

SELECT 1/0;
100051 (22012): Division by zero
Copy
SELECT DIV0NULL(1, 0);

+----------------+
| DIV0NULL(1, 0) |
|----------------|
|       0.000000 |
+----------------+
Copy
SELECT 1/NULL;

+--------+
| 1/NULL |
|--------|
|   NULL |
+--------+
Copy
SELECT DIV0NULL(1, NULL);

+-------------------+
| DIV0NULL(1, NULL) |
|-------------------|
|          0.000000 |
+-------------------+
Copy
语言: 中文