QueryWrapper 和 UpdateWrapper 常用的API 记录:
dome 结构
基于测试给出结果
一、QueryWrapper
1: eq (等于 " = ")
@Test
public void getOne(){
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
// 使用实体类属性名
wrapper.eq(User::getNickname, "李四");
// 使用数据库字段名
queryWrapper.eq("username", "张三");
User user = userService.getOne(wrapper);
System.out.println(user);
}
2: ne (不等于 <>)
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
queryWrapper.ne("username","张三");
wrapper.ne(User::getNickname, "李四");
// 返回集合类型
List<User> users = userService.list(wrapper);
System.out.println(users);
3: between(id在 1 和 2 之间的用户 ==> id between 1 and 2 )
queryWrapper.between("id", 1,2 );
List<User> users = userService.list(queryWrapper);
System.out.println(users);
4: notBetween(id不在 1 和 2 之间的用户 ==> id not between 1 and 2 )
queryWrapper.notBetween("id", 1,2 );
List<User> users = userService.list(queryWrapper);
System.out.println(users);
5: like(模糊查询 LIKE ‘%值%’ )
queryWrapper.like("username","张");
queryWrapper.like("address","贵");
List<User> users = userService.list(queryWrapper);
System.out.println(users);
6: notlike(模糊排除查询 NOT LIKE ‘%值%’ )
queryWrapper.notLike("username","张");
List<User> users = userService.list(queryWrapper);
System.out.println(users);
7: likeLeft(左模糊查询 LIKE ‘%值’)
queryWrapper.likeLeft("username","张");
8: likeRight(右模糊查询 LIKE ‘值%’ )
queryWrapper.likeRight("username","三");
9: isNull 和 isNotNull
queryWrapper.isNull("address");
queryWrapper.isNotNull("tel");
10: in 和 notIn ( 循环遍历 )
Integer[] s = new Integer[] {5,2,3};
// 传入数组
queryWrapper.in("id", new Integer[] {1,3,5});
queryWrapper.notIn("id",s);
List<User> users = userService.list(queryWrapper);
11: or() ( 拼接查询条件 )
queryWrapper.eq("id",1).or().like("address","北京");
12: and( and 嵌套查询条件 )
// i : 可以自定义,不和queryWrapper 重名即可
queryWrapper.eq("address","贵州").and(i -> i.gt("id", 1).like("username","A"));
13: nested (正常嵌套 不带 AND 或者 OR )
queryWrapper.eq("address","贵州").nested(i -> i.gt("id", 1).like("username","B"));
14: select(选择查看字段 )
queryWrapper.select("id","username", "address");
15: gt (大于 > )
queryWrapper.gt("id",2);
wrapper.gt(User::getId,3);
List<User> users = userService.list(wrapper);
System.out.println(users);
16: ge (大于 >= )
queryWrapper.ge("id",2);
wrapper.ge(User::getId,3);
List<User> users = userService.list(wrapper);
System.out.println(users);
17: lt(小于 < )
queryWrapper.lt("id",2);
wrapper.lt(User::getId,3);
List<User> users = userService.list(wrapper);
System.out.println(users);
18: le(小于 <= )
queryWrapper.le("id",2);
wrapper.le(User::getId,3);
List<User> users = userService.list(wrapper);
System.out.println(users);
二、 UpdateWrapper
提示: 以上的也均可用
1: set(修改)
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.set("username", "测试用例").eq("id", 7);
userService.update(updateWrapper);
2: setSql(设置 SET 部分 SQL)
updateWrapper.setSql("nickname = '杨过' , email = '668470787@qq.com' , tel = '13096829999'").eq("id", 6);