在oracle中,任何数字除以null返回null。我想知道DB2数据库是什么情况?它的全部要点是检查以下表达方式是否以oracle和db2的方式表现出相同的方式:从Some_table中选择A/Nullif(B,0);说b = 0,我们将通过null进行分区。
nullif函数如果两个参数相等,则返回null值;否则,它返回第一个参数的值。
-nullif(表达式)-------------------------------------------------
使用Nullif(E1,E2)的结果与使用情况表达式相同:
e1 = e2然后null否E1结束时的情况复制
当e1 = e2评估未知数时,因为一个或两个参数为无效时,案例表达式认为评估不正确。在这种情况下,nullif返回值第一个论点。IBM DB2文档
因此,对于DB2和Oracle,它的工作方式相同
db2当数学表达式中的一个运算符为null时返回null。例如
values (3 / cast(null as integer)) will return null.
另一方面,无效的定义等于oracle中的定义。如果两个参数相等,则将返回null。