zhjh256

对于不是采用所有字段都是not null的mysql表设计而言,mysql提供了一个<=>操作符。

在oracle中我们的处理方式通常类似:

where a = #{var} or #{var} is null

或者

where a = nvl(#{var},\' \') or nvl(#{var},\' \') = \' \'

在mysql中则是:

where a = ifnull(#{var},\' \') or ifnull(#{var},\' \') = \' \'

或者:

where a= #{var} or #{var} is null。

通过<=>操作符,就无需关心null的问题,在<=>内部,null被当成了普通值进行对待,如下:

where a<=>#{var}

不用进行特殊的处理。

 

分类:

技术点:

相关文章: