sql使用不等于条件时空值也将被过滤

今天处理一个查询的bug,通过筛查错误定位在一句有“不等于”条件的语句上,如下

and ic.alarmClass <> ?

<>!= 都用于“不等于”条件,但是同时过滤了alarmClass为空的数据,如果要保留这些数据,hql的写法如下:

and ( ic.alarmClass <> ? or ic.alarmClass is null ) 

还有什么有更好的写法?请告诉我

猜你喜欢

转载自weilikk.iteye.com/blog/2321589