前言
条件查询首先使用QueryWrapper创建一个wrapper对象存放条件。例如:
//创建一个QueryWrapper的对象 QueryWrapper<User> wrapper = new QueryWrapper<>(); //通过QueryWrapper设置条件 //ge gt le lt //查询age>=30的记录 //第一个参数是字段的名称 , 第二个参数是设置的值 wrapper.ge("age" , 30); List<User> users = userMapper.selectList(wrapper); System.out.println(users);
所以查询最重要的就是组装条件,下面对各种sql条件组装做一个说明
in条件组装 比如sys_code in(“,”,‘’)
queryWrapper.lambda()
.in(CollectionUtil.isNotEmpty(taskQuery.getSystemCodes()),User::getSystemCode,taskQuery.getSystemCodes());
le ge eq等 < > =
queryWrapper.lambda()
.le(ObjectUtil.isNotEmpty(taskQuery.getGenTimeGe()), User::getGenTime, taskQuery.getGenTimeGe())
.ge(ObjectUtil.isNotEmpty(taskQuery.getGenTimeLe()), User::getGenTime, taskQuery.getGenTimeLe())
//.eq(ObjectUtil.isNotEmpty(taskQuery.getGenTimeEq()), User::getGenTime, taskQuery.getGenTimeEq())
.in(CollectionUtil.isNotEmpty(taskQuery.getSystemCodes()),User::getSystemCode,taskQuery.getSystemCodes())
;