mysql null问题续

上回说到group_concat和concat的时候,如果有列值为null,则concat后为null。

现在发现另一个问题,如果有列A为null,而另一列B为空'',那么A<>B与A=B的记录条数之和不等于总数。

也就是说,如果列A为null,列B为空'',那么mysql是不会比较它们的,即这种情况既不属于相等,也不属于不相等。

解决办法就是用ifnull(sqlserver是isnull)函数:ifnull(A,'')。把null转换成空之后再和B比较。

另外,select count(idc_position.id) from ** 这个语句run时,如果表中有些行的id这个字段为Null,那么,select count(id) 返回记录行数时,将不会把id为null的行算在内,自动干掉了这些行。

又一个陷阱……

你可能感兴趣的:(mysql null问题续)