一:null和"值过滤显示的问题
看日期中有空值,想用where条件过滤掉,写了where A is not null
查询结果显示A为空的值还是出现了,没有过滤成功
然后用where A !="或者where A <>"的过滤写法,查询结果就没有A为空值的了
搜索发现如下的说法,记录下:
在DB2中,null和"是完全不同的两个东西。
字段值为null,查询时显示-
字段值为",查询时显示空,什么都没有
NULL是一个不确定值它不能通过列值过滤,只能通过IS NULL 或者IS NOT NULL方式过滤
而"可以用in,=,<>,>,<来比较判断。
二:除法运算是报错:DB2报错:SQLCODE=-419, SQLSTATE=42911 十进制除法无效
A/B
B的小数精度A的要长导致的,把B的精度调整到和A一致就不会报错了
A/cast(B as decimal(20,2))
文章讨论了在DB2数据库中null值与空字符串的区别,指出null不能直接通过等于或不等于操作符过滤,需使用ISNULL函数。同时,介绍了除法运算报错SQLCODE=-419的情况,原因是小数精度不匹配,调整精度即可避免错误。
1468

被折叠的 条评论
为什么被折叠?



