Mybatis-Plus条件构造器

目录

Mybatis-Plus条件构造器

1、allEq:全部

2、eq:等于

3、ne:不等于

4、gt:大于

5、ge:大于等于

6、lt:小于

7、le:小于等于

8、between:两者之间

9、notBetween:两者之外

10、like:模糊查询

11、notLike:模糊查询

12、likeLeft:

13、likeRight

14、isNull

15、isNotNull

15、in

16、notIn

17、inSql

18、notInSql

19、groupBy

20、orderByAsc

21、orderByDesc

22、orderBy

23、having

24、or

25、and

26、nested

27、last

28、exists

29、notExists

QueryWrapper

30、select

UpdateWrapper

31、set

32、lambda


Mybatis-Plus条件构造器

1、allEq:全部

allEq(Map<R, V> params)
allEq(Map<R, V> params, boolean null2IsNull)
allEq(boolean condition, Map<R, V> params, boolean null2IsNull)

 全部eq(或个别isNull)

个别参数说明:

params : key为数据库字段名,value为字段值
null2IsNull : 为true则在mapvaluenull时调用 isNull 方法,为false时则忽略valuenull

 示例:

@Test
    public void AllEq() {
        //设置条件
        Map<String,Object> params = new HashMap<>();
        params.put("name", "坤坤");
        params.put("age", "18");
        params.put("password", null);
        QueryWrapper<Users> wrapper = new QueryWrapper<>();
        //SQL:SELECT id,user_name,password,name,age,email FROM tb_user WHERE password IS NULL AND name = ? AND age = ?
        //wrapper.allEq(params);

        //去掉为空的条件
        //SQL:SELECT id,user_name,password,name,age,email FROM tb_user WHERE name = ? AND age = ?
        //wrapper.allEq(params,false);

        //过滤条件
        //SQL:SELECT id,user_name,password,name,age,email FROM tb_user WHERE name = ?
        wrapper.allEq((k, v) -> (k.equals("name") || k.equals("id")),params);
        //SQL:SELECT id,user_name,password,name,age,email FROM tb_user WHERE name = ? AND age = ?
        wrapper.allEq((k, v) -> (k.equals("name") || k.equals("age")),params);
        
        List<Users> users = this.userMapper.selectList(wrapper);
        for (Users user : users) {
            System.out.println(user);
        }

    }

2、eq:等于

eq(R column, Object val)
eq(boolean condition, R column, Object val)
  • 等于 =
  • 例: eq("name", "老王")--->name = '老王'

示例: 

//查询一条数据
    @Test
    public void selectOne() {

        QueryWrapper<Users> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("user_name","11");
        //查询一条,如果多余1条会报异常
        Users user = this.userMapper.selectOne(queryWrapper);
        System.out.println("result = " + user);
    }

3、ne:不等于

ne(R column, Object val)
ne(boolean condition, R column, Object val)
  • 不等于 <>
  • 例: ne("name", "老王")--->name <> '老王'

示例:

//不等于
    @Test
    public void selectListNe() {
        QueryWrapper<Users> queryWrapper = new QueryWrapper<>();
        //SQL: SELECT id,user_name,password,name,age,email FROM tb_user WHERE name <> ? 
        queryWrapper.ne("name","王五");
        //根据条件查询集合
        List<Users> userList = this.userMapper.selectList(queryWrapper);
        userList.forEach(System.out::println);
    }

4、gt:大于

gt(R column, Object val)
gt(boolean condition, R column, Object val)
  • 大于 >
  • 例: gt("age", 18)--->age > 18
//大于
    @Test
    public void selectListGt() {
        QueryWrapper<Users> queryWrapper = new QueryWrapper<>();
        //SQL: SELECT id,user_name,password,name,age,email FROM tb_user WHERE age > ? 
        queryWrapper.gt("age","20");
        //根据条件查询集合
        List<Users> userList = this.userMapper.selectList(queryWrapper);
        userList.forEach(System.out::println);
    }

5、ge:大于等于

ge(R column, Object val)
ge(boolean condition, R column, Object val)
  • 大于等于 >=
  • 例: ge("age", 18)--->age >= 18
//大于等于
    @Test
    public void selectListGe() {
        QueryWrapper<Users> queryWrapper = new QueryWrapper<>();
        //SQL: SELECT id,user_name,password,name,age,email FROM tb_user WHERE age >= ? 
        queryWrapper.ge("age","20");//
        //根据条件查询集合
        List<Users> userList = this.userMapper.selectList(queryWrapper);
        userList.forEach(System.out::println);
    }

6、lt:小于

lt(R column, Object val)
lt(boolean condition, R column, Object val)
  • 小于 <
  • 例: lt("age", 18)--->age < 18
 //小于
    @Test
    public void selectListLt() {
        QueryWrapper<Users> queryWrapper = new QueryWrapper<>();
        //SQL: SELECT id,user_name,password,name,age,email FROM tb_user WHERE age < ?
        queryWrapper.lt("age","20");//
        //根据条件查询集合
        List<Users> userList = this.userMapper.selectList(queryWrapper);
        userList.forEach(System.out::println);
    }

7、le:小于等于

le(R column, Object val)
le(boolean condition, R column, Object val)
  • 小于等于 <=
  • 例: le("age", 18)--->age <= 18
//小于等于
    @Test
    public void selectListLe() {
        QueryWrapper<Users> queryWrapper = new QueryWrapper<>();
        //SQL: SELECT id,user_name,password,name,age,email FROM tb_user WHERE age <= ?
        queryWrapper.le("age","20");//
        //根据条件查询集
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值