MyBatisPlus-范围查询、模糊查询及排序查询

简介: MyBatisPlus-范围查询、模糊查询及排序查询

一、范围查询

需求:对年龄进行范围查询,使用lt()、le()、gt()、between()进行范围查询

@SpringBootTest 
class Mybatisplus02DqlApplicationTests { 
    @Autowired 
    private UserDao userDao; 
    @Test
    void testGetAll(){ 
        LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>(); 
        lqw.between(User::getAge, 10, 30); 
        //SELECT id,name,password,age,tel FROM user WHERE (age BETWEEN ? AND ?) 
        List<User> userList = userDao.selectList(lqw); 
        System.out.println(userList); 
    } 
}


gt():大于(>)

ge():大于等于(>=)

lt():小于(<)

lte():小于等于(<=)

between():between ? and ?

二、模糊查询

需求:查询表中name属性的值以3开头的用户信息,使用like进行模糊查询

@SpringBootTest 
class Mybatisplus02DqlApplicationTests { 
    @Autowired 
    private UserDao userDao; 
    @Test 
    void testGetAll(){ 
        LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<User>(); 
        lqw.likeLeft(User::getName, "J"); 
        //SELECT id,name,password,age,tel FROM user WHERE (name LIKE ?) 
        List<User> userList = userDao.selectList(lqw); 
        System.out.println(userList); 
    } 
}


like():前后加百分号,如 %J%

likeLeft():前面加百分号,如 %J

likeRight():后面加百分号,如 J%

三、排序查询

需求:查询所有数据,然后按照id降序

@SpringBootTest 
class Mybatisplus02DqlApplicationTests {
    @Autowired 
    private UserDao userDao; 
    @Test 
    void testGetAll(){ 
        LambdaQueryWrapper<User> lwq = new LambdaQueryWrapper<>(); 
        /**
            * condition :条件,返回boolean, 
                当condition为true,进行排序,如果为false,则不排序 
            * isAsc:是否为升序,true为升序,false为降序 
            * columns:需要操作的列 
        */ 
         lwq.orderBy(true,false, User::getId); 
        userDao.selectList(lw 
    } 
}

除了上面的演示方式,还有其他排序方法可以被调用:

e0f65949f9c44b82ab46e9a33dcb41a3.png


orderBy排序

● condition:条件,true则添加排序,false则不添加排序

● isAsc:是否为升序,true升序,false降序

● columns:排序字段,可以有多个

orderByAsc/Desc(单个column):按照指定字段进行升序/降序

orderByAsc/Desc(多个column):按照多个字段进行升序/降序

● orderByAsc/Desc

● condition:条件,true添加排序,false不添加排序


除了上面几种查询条件构建方法还有其他方法,比如isNull,isNotNull,notIn等等方法可供选择,具体可以参考官方文档的条件构造器俩学习使用,具体网址为:


条件构造器 | MyBatis-Plus (baomidou.com)

https://baomidou.com/pages/10c804/#abstractwrapper

目录
相关文章
Mybatis-plus查询表中指定字段(不查询全部字段)
Mybatis-plus查询表中指定字段(不查询全部字段)
873 0
Mybatis-plus查询表中指定字段(不查询全部字段)
|
9月前
|
索引
Elasticsearch 精确查询:术语查询、多术语查询、主键查询、范围查询、存在查询、前缀查询、正则查询与通配符查询
Elasticsearch 精确查询:术语查询、多术语查询、主键查询、范围查询、存在查询、前缀查询、正则查询与通配符查询
|
10月前
|
SQL Java 数据库连接
MyBatisPlus-聚合查询、分组查询及等值查询
MyBatisPlus-聚合查询、分组查询及等值查询
1492 0
|
9月前
|
SQL 关系型数据库 MySQL
MySQL数据库——SQL(3)-DQL(基本查询、条件查询、聚合函数、分组查询、排序查询、分页查询、案例练习)
MySQL数据库——SQL(3)-DQL(基本查询、条件查询、聚合函数、分组查询、排序查询、分页查询、案例练习)
99 0
|
10月前
|
SQL Java Spring
MybatisPlus-条件查询方式及多条件构建查询
MybatisPlus-条件查询方式及多条件构建查询
1205 0
|
JavaScript
简单的模糊查询
简单的模糊查询
79 0
|
SQL Java
MyBatisPlus实现分页和查询操作就这么简单
MyBatisPlus实现分页和查询操作就这么简单
224 0
|
算法 索引
Elasticsearch - 聚合获取原始数据并分页&排序&模糊查询
Elasticsearch - 聚合获取原始数据并分页&排序&模糊查询
381 0
Elasticsearch - 聚合获取原始数据并分页&排序&模糊查询
|
SQL 数据库
对查询结果进行排序
对查询结果进行排序
109 0
|
SQL Oracle 关系型数据库
Oracle简单查询、条件查询、枚举查询、模糊查询、排序查询、函数查询等
Oracle简单查询、条件查询、枚举查询、模糊查询、排序查询、函数查询等
390 0
Oracle简单查询、条件查询、枚举查询、模糊查询、排序查询、函数查询等