当前位置:   article > 正文

Mybatis-Plus中or()的使用避坑_mybatis plus (or)

mybatis plus (or)

1.连接 or()

当需要简单的将两个条件或连接,则最直接的写法为:

  1. QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
  2. eq("status",0).
  3. or().
  4. eq("status",1);
  5. //sql条件为 select * from user where status=0 or status=1

2.连接 or()

当多个条件共同拼接,则最直接的写法为: 要么把or()拼接放最前面,要么用queryWrapper.and(

qr.eq("status", 1).or().like("status", 2)),要不查询的数据会有偏差,queryWrapper.and相当于把两个条件()一块;

  1. QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
  2. eq("status",0).
  3. or().
  4. eq("status",1)
  5. eq("user_name","张三");
  6. //sql条件为 select * from user where status=0 or status=1 and user_name='张三'
  7. QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
  8. eq("user_name","张三").
  9. eq("status",0).
  10. or().
  11. eq("status",1);
  12. //sql条件为 select * from user where user_name='张三' and status=0 or status=1
  13. 查询出来的数据和select * from user where status=0 or status=1 and user_name='张三' 不一致
  14. QueryWrapper<User> queryWrapper = new QueryWrapper<User>().
  15. eq("user_name","张三").and(q->q.eq("status",0).
  16. or().
  17. eq("status",1));
  18. select * from user where select * from user where user_name='张三' and (status=0 or status=1 ) 查询出来的数据和select * from user where status=0 or status=1 and user_name='张三' 一致

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/158333
推荐阅读
相关标签
  

闽ICP备14008679号