select count(0) from tps_uw_detail where trim(coreContNo)=''###1736
select count(0) from tps_uw_detail where coreContNo is null###735
select count(0) from tps_uw_detail where (coreContNo is null or trim(coreContNo)='')##2471
=''就是存的空字符串;is null 就是默认的。
由于是后来新加的字段,默认为null,所以历史数据都为null。表中加上这个字段后,再落库的数据就是空字符串了。
根据自己的需求选用脚本,第三个是适合我的。
比如\x0d\x0ainsert into table a (a1,b1)values("a1",'')\x0d\x0a对于这种情况,因为表里存的是'',其实是没有内容的,要查询这个字段,不能直接使用\x0d\x0aselect *\x0d\x0afrom a\x0d\x0awhere b1=''\x0d\x0asql中判断非空不能用等号,因为null在sql中被看作特殊符号,必须使用关键字 is和not\x0d\x0a应该如此使用:\x0d\x0aselect * from A where b1 is null\x0d\x0a或者:\x0d\x0aselect * from A where b1 is not null欢迎分享,转载请注明来源:内存溢出
评论列表(0条)