0
点赞
收藏
分享

微信扫一扫

MyBatisPlus中常用条件构造器示例代码


场景

MybatisPlus 条件构造器官方文档

​​https://baomidou.gitee.io/mybatis-plus-doc/#/wrapper​​

实现

1.查询相等属性的实体类

QueryWrapper<WmsInOrder> wmsInOrderQueryWrapper =new QueryWrapper<WmsInOrder>();
wmsInOrderQueryWrapper.eq("code",Code);
int count = wmsInOrderMapper.selectCount(wmsInOrderQueryWrapper);

其中WmsInOrder是实体类,code是对应实体类在数据库中的字段。

这里就是查询code字段属性为Code的记录在数据库中的记录数。

如果是两个条件可以继续添加:

wmsReceiveOrderDetailsQueryWrapper.eq("receive_id",wmsReceiveOrder.getId());
wmsReceiveOrderDetailsQueryWrapper.eq("salver_code",salverCode);
wmsReceiveOrderDetailsQueryWrapper.eq("materiel_number",materielNumber);

2.模糊搜索

QueryWrapper<WmsInOrder> wmsInOrderQueryWrapper2 =new QueryWrapper<WmsInOrder>();
wmsInOrderQueryWrapper2.like("code","SI"+formatStr);
List<WmsInOrder> wmsInOrderList =wmsInOrderMapper.selectList(wmsInOrderQueryWrapper2);

这里就是查询code属性中包含"SI"+formatStr字段的记录数,会返回一个List。

其中后面模糊搜索的表达式可以用正常的String包含%来表示:

String likeCode=wmsReceiveOrderDetails.getMaterielNumber()+"@"+wmsReceiveOrderDetails.getSupplierBatch()+"%"+"@"+simpleDateFormat.format(wmsReceiveOrderDetails.getProductDate());

QueryWrapper<BusTrayMateriel> busTrayMaterielQueryWrapper =new QueryWrapper<BusTrayMateriel>();
busTrayMaterielQueryWrapper.like("materiel_bar_code",likeCode);
int count =busTrayMaterielMapper.selectCount(busTrayMaterielQueryWrapper);

3.其他条件参数使用类似

 

查询方式

说明

setSqlSelect

设置 SELECT 查询字段

where

WHERE 语句,拼接 + ​​WHERE 条件​

and

AND 语句,拼接 + ​​AND 字段=值​

andNew

AND 语句,拼接 + ​​AND (字段=值)​

or

OR 语句,拼接 + ​​OR 字段=值​

orNew

OR 语句,拼接 + ​​OR (字段=值)​

eq

等于=

allEq

基于 map 内容等于=

ne

不等于<>

gt

大于>

ge

大于等于>=

lt

小于<

le

小于等于<=

like

模糊查询 LIKE

notLike

模糊查询 NOT LIKE

in

IN 查询

notIn

NOT IN 查询

isNull

NULL 值查询

isNotNull

IS NOT NULL

groupBy

分组 GROUP BY

having

HAVING 关键词

orderBy

排序 ORDER BY

orderAsc

ASC 排序 ORDER BY

orderDesc

DESC 排序 ORDER BY

exists

EXISTS 条件语句

notExists

NOT EXISTS 条件语句

between

BETWEEN 条件语句

notBetween

NOT BETWEEN 条件语句

addFilter

自由拼接 SQL

last

拼接在最后,例如:last("LIMIT 1")

举报

相关推荐

0 条评论