有时候从数据库获取数据的时候,假如遇到一些特殊情况,例如需要避免数据库放弃索引从而进行全文搜索,null字段的判断会影响索引的使用;或者是数据库字段中在shell脚本进行二次加工,null字段有时候会引起整条数据都为null的情况等。这个时候就需要在入库的时候对数据库进行一些处理。
-
mysql:
使用ifnull函数:ifnull(arg1,arg2),arg1表示被查验的数据,arg2表示当arg1为null值时显示为arg2值。
注意:ifnull要与mysql的isnull区分,isnull是判断是否为null,返回值是1表示该字段为null,0表示不为null。 -
postgresql:
使用coalesce函数:coalesce(arg1,arg2),arg1表示被查验的数据,arg2表示当arg1为null值时显示为arg2值。
注意:此处有一个坑,当arg1为varchar时,arg2也必须为varchar;当arg1为numeric时arg2也必须为numeric。不可以混合使用。 -
oracle:
使用nvl函数:nvl(arg1,arg2),arg1表示被查验的数据,arg2表示当arg1为null值时显示为arg2值。