Mybatis-plus:条件查询的方法

方法1:QueryWrapper<T>()

@Test
    public void SelectTest1() {
        //QueryWrapper<>():mybatisPlus内置的查询包装器
        QueryWrapper<User> bqw = new QueryWrapper<>();
        //&lt : < 小于号   &gt : >  大于号
        bqw.lt("age", 50);
        List<User> books = userRepository.selectList(bqw);
        System.out.println(books);
    }

方法2:lambda格式按条件查询

    @Test
    public void SelectTest2() {
        QueryWrapper<User> bqw = new QueryWrapper<>();
        //lambda格式按条件查询
        bqw.lambda().lt(User::getAge, 50);
        List<User> books = userRepository.selectList(bqw);
        System.out.println(books);
    }

方法3:LambdaQueryWrapper  单条件查询

@Test
    void testSelectWrapper(){
        LambdaQueryWrapper<User> ulqw = new LambdaQueryWrapper<>();
        //&lt 小于号  &gt 大于号
        ulqw.gt(User::getAge,91);
        List<User> userList = userRepository.selectList(ulqw);
        System.out.println(userList);
    }

方法4:LambdaQueryWrapper  多条件查询

    @Test
    public void SelectTest4() {
        LambdaQueryWrapper<User> ulqw = new LambdaQueryWrapper<User>();

        //条件 :age取60到90之间的 ,链式编程
        //取中间:并且(and)
        ulqw.lt(User::getAge,90).gt(User::getAge,60);
        //上面的一行和下面的两行结果一样
        //blqw.lt(User::getAge,90);
        //blqw.gt(User::getAge,60);

        //取两端:or 结果是输出age大于90和小于60的
        //blqw.gt(User::getAge, 90).or().lt(User::getAge, 60);

        List<User> users = userRepository.selectList(ulqw);
        System.out.println(users);
    }

方法5:条件查询—null的处理

    @Test
    void testLambSelect(){
        //模拟页面传递过来的查询数据
        UserVo userVo = new UserVo();
        userVo.setAge(60);
        userVo.setAgeOther(90);

        //null判定
        LambdaQueryWrapper<User> ulqw = new LambdaQueryWrapper<>();
        //判断传入参数是否为null,!= 返回true,如果返回的是true则连接当条件
        //SELECT id,name,password,age,tel FROM user WHERE (age > 90 OR age < 60)
        ulqw.gt(null != userVo.getAgeOther() ,User::getAge,userVo.getAgeOther()).or()
                .lt(null != userVo.getAge() ,User::getAge,userVo.getAge());
        List<User> users = userRepository.selectList(ulqw);
        System.out.println(users);
    }

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值