当前位置:   article > 正文

【Mybatis-Plus】or拼接_mybatisplus or写法

mybatisplus or写法

Mybatis-Plus的or拼接是个坑:
这是需要的结果:

queryWrapper.and(c->c.or(a->a.eq("qcs3.status", "SIGNING")
                        .eq("qcs.status", "SIGNING")).or(b->b.eq("qcs.status","INVALIDING")
                        .eq("qcs3.status","INVALIDING"))).eq("qcs.is_del",0);
  • 1
  • 2
  • 3

执行的sql

where
	((qcs3.status = 'SIGNING'
		and qcs.status = 'SIGNING')
	or (qcs.status = 'INVALIDING'
		and qcs3.status = 'INVALIDING'))
		and qcs.is_del = 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

但是很容易写成:

     queryWrapper.and(a->a.eq("qcs3.status", "SIGNING")
                        .eq("qcs.status", "SIGNING")).or(b->b.eq("qcs.status","INVALIDING")
                        .eq("qcs3.status","INVALIDING")).eq("qcs.is_del",0);;
  • 1
  • 2
  • 3

执行的sql:

where
	((qcs3.status = 'SIGNING'
		and qcs.status = 'SIGNING')
	or (qcs.status = 'INVALIDING'
		and qcs3.status = 'INVALIDING'))
		and qcs.is_del = 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

or拼接常用的写法:

例1: eq(“id”,1).or().eq(“name”,“老王”)—>id = 1 or name = ‘老王’

例2: or(i -> i.eq(“name”, “李白”).ne(“status”, “活着”))—>or (name = ‘李白’ and status <> ‘活着’)

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

闽ICP备14008679号