条件构造器 | MyBatis-Plus
当需要进行一些复杂的条件查询时,则需使用wrapper,来编辑这些条件
1、条件查询
①allEq()
即是where后面的等于"=",该方法的后的所有参数都会被以"and"的形式进行连接
QueryWrapper qw1 = new QueryWrapper();
Map<String,Object> map=new HashMap();
map.put("count",200L);
map.put("pid",12);
qw1.allEq(map);
②eq()
和alleq()的区别在于,eq()只能加一个参数
qw1.eq("count",200L);
③ne()
即是不等于
qw1.ne("count",200L);
④gt()、ge()、lt()、le()
分别是>,>=,<,<=
⑤between()、notBetween()
即是between-and和not between-and,使用要注意小值在前,大值在后
⑥like、likeLeft、likeRight、notLike
like组装为 like%内容%
likeLeft为 like%内容
likeRight为 like内容%
notLike与此类似
⑦isNull、isNotNull
即为 is null和is not null
⑧in、notIn
后面一个参数为可变长参数
⑨groupBy、orderBy
相当于order by
第一个参数,第二个参数决定降序排列还是升序排列,第三个参数决定根据那一列
⑩having
having两种代码写法,记得要配合聚合函数使用
⑪or、and
如果不调用or(),则语句为and()关系
多次链式调用时,默认为and关系
⑫exists、notExists
与sql中EXISTS、not EXISTS用法一致
2、查询投影
如果不设置投影,默认为select * 查询出所有列
condition
有些方法为boolean类型的该参数,该参数中判断语句为true时,才将该条件拼接上sql语句中,可以用于判断当一些字段不为空时就拼接条件
false
true