sql ,hql 使用 or 注意使用()

当 or 和 and 共用时:

如:

select * from user where age is null or age < 18 and name like : name

在没有括号情况下 ,and 优先级小于 or ,相当于

        select * from user where (age is null) or (age < 18 and name like : name )

,而所需的查询是

      select * from user where (age is null or age < 18) and name like : name

转载于:https://my.oschina.net/yukong/blog/956599