mybatis puls LambdaQueryWrapper去重查询
时间: 2023-11-20 20:55:59 浏览: 121
以下是使用MyBatis Plus LambdaQueryWrapper进行去重查询的示例代码:
```java
LambdaQueryWrapper<Entity> wrapper = new LambdaQueryWrapper<>();
wrapper.select(Entity::getField1, Entity::getField2)
.groupBy(Entity::getField1)
.having("count(*) > 1");
List<Entity> list = entityMapper.selectList(wrapper);
```
上述代码中,我们使用LambdaQueryWrapper构建查询条件,通过select()方法指定查询的字段,groupBy()方法指定分组的字段,having()方法指定分组后的筛选条件,最后使用selectList()方法执行查询并返回结果。
相关问题
LambdaQueryWrapper去重查询
LambdaQueryWrapper是MyBatis-Plus提供的一种查询构造器,它可以通过Lambda表达式来构建查询条件,从而简化了代码的编写。在LambdaQueryWrapper中,我们可以使用selectDistinct()方法来实现去重查询。具体实现方式如下:
LambdaQueryWrapper<T> wrapper = new LambdaQueryWrapper<>();
wrapper.selectDistinct("column1", "column2", ...);
wrapper.eq(T::getField1, value1)
.ne(T::getField2, value2)
.in(T::getField3, list)
.orderByAsc(T::getField4);
其中,selectDistinct()方法用于指定需要去重的列,eq()、ne()、in()等方法用于指定查询条件,orderByAsc()方法用于指定排序方式。最后,我们可以通过调用MyBatis-Plus提供的count()方法来获取查询结果的数量。
mybatis 使用LambdaQueryWrapper distinct查询
Mybatis 使用 LambdaQueryWrapper 进行 distinct 查询,可以通过以下步骤实现:
1. 引入 LambdaQueryWrapper 和 QueryWrapper 类
在 pom.xml 文件中添加以下依赖:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.0.7.1</version>
</dependency>
```
2. 创建 LambdaQueryWrapper 对象
```java
LambdaQueryWrapper<Entity> wrapper = new LambdaQueryWrapper<>();
```
3. 使用 wrapper 的 distinct 方法进行查询
```java
wrapper.select(Entity::getId).distinct(true);
```
4. 执行查询操作
```java
List<Entity> list = entityMapper.selectList(wrapper);
```
完整示例代码如下:
```java
LambdaQueryWrapper<Entity> wrapper = new LambdaQueryWrapper<>();
wrapper.select(Entity::getId).distinct(true);
List<Entity> list = entityMapper.selectList(wrapper);
```
阅读全文