【MySQL】0除算の結果と対処する方法


ここではMySQLで、0除算の結果と対処する方法を紹介しています。

0除算の結果はNULL

まず0除算した結果です。

0除算するとNULLが返ってきました。

mysql> SELECT 1/0;
+------+
| 1/0  |
+------+
| NULL |
+------+
1 row in set (0.00 sec)

0除算に対処する方法

0除算してしまった結果を別の値に置き換えて、判別できるようにする方法があります。

例えば、結果がNULLとなる場合(0除算してしまった場合)は-1に置き換えます。

次のSQLでは、IFNULL関数を使って、結果がNULLとなった場合は-1に置き換えるようにしています。

mysql> SELECT IFNULL(1/0,-1);
+----------------+
| IFNULL(1/0,-1) |
+----------------+
|        -1.0000 |
+----------------+
1 row in set (0.00 sec)