mybatis-plus的QueryWrapper的or方法如何对字段进行函数操作
时间: 2024-02-17 13:01:42 浏览: 25
Mybatis-plus的QueryWrapper的or方法可以通过使用Lambda表达式来对字段进行函数操作。Lambda表达式可以使用QueryWrapper类中的静态方法来对字段进行函数操作,例如:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.or(i -> i.eq("age", 18).or().apply("YEAR(create_time)={0}", 2021));
List<User> userList = userMapper.selectList(wrapper);
```
上述代码中,Lambda表达式中使用了eq方法来判断年龄是否等于18,同时使用了apply方法来对create_time字段进行YEAR函数操作,判断是否等于2021年。其中,apply方法可以接受一个SQL表达式,用于对字段进行函数操作。
相关问题
mybatis-plus的QueryWrapper的or方法如何对字段进行切割
Mybatis-plus的QueryWrapper的or方法可以通过使用Lambda表达式来对字段进行切割。Lambda表达式可以使用QueryWrapper类中的静态方法来对字段进行切割操作,例如:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.or(i -> i.eq("age", 18).or().apply("SUBSTR(name,1,3)={0}", "Tom"));
List<User> userList = userMapper.selectList(wrapper);
```
上述代码中,Lambda表达式中使用了eq方法来判断年龄是否等于18,同时使用了apply方法来对name字段进行SUBSTR函数操作,获取其前三个字符,判断是否等于"Tom"。其中,apply方法可以接受一个SQL表达式,用于对字段进行切割操作。
mybatis-plus的QueryWrapper的or方法如何对字段进行切割,并使用like
Mybatis-plus的QueryWrapper的or方法可以通过使用Lambda表达式来对字段进行切割,并使用like进行模糊查询。Lambda表达式可以使用QueryWrapper类中的静态方法来对字段进行切割操作,同时可以使用like方法进行模糊查询,例如:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.or(i -> i.eq("age", 18).or().apply("SUBSTR(name,1,3)={0}", "Tom").like("email", "test"));
List<User> userList = userMapper.selectList(wrapper);
```
上述代码中,Lambda表达式中使用了eq方法来判断年龄是否等于18,同时使用了apply方法来对name字段进行SUBSTR函数操作,获取其前三个字符,判断是否等于"Tom"。接着,使用了like方法来对email字段进行模糊查询,判断是否包含"test"。其中,apply方法可以接受一个SQL表达式,用于对字段进行切割操作,like方法可以接受一个字符串,用于进行模糊查询。