mybatisplus去重查询
时间: 2023-07-22 09:02:52 浏览: 2737
你可以使用 MyBatis-Plus 提供的 QueryWrapper 类来进行去重查询。以下是一个示例代码:
```java
QueryWrapper<Entity> queryWrapper = new QueryWrapper<>();
queryWrapper.select("DISTINCT column1, column2") // 列出需要去重的列
.eq("column3", value1) // 添加其他查询条件
.ne("column4", value2);
List<Entity> result = entityMapper.selectList(queryWrapper);
```
在上述代码中,你需要将 `Entity` 替换为你的实体类名,`entityMapper` 替换为你的 Mapper 接口实例。通过 `queryWrapper.select("DISTINCT column1, column2")` 指定需要去重的列,然后可以通过其他方法链式地添加其他查询条件。最后,通过 `entityMapper.selectList(queryWrapper)` 执行查询并获取结果。
希望这能帮到你!如有更多问题,请继续提问。
相关问题
mybatisplus 去重查询
MyBatis Plus提供了多种方法进行去重查询。其中一种方法是使用queryWrapper的distinct方法。你可以通过在queryWrapper上调用select方法,指定要查询的字段,然后使用distinct方法去除重复的结果。另一种方法是直接在SQL语句中使用distinct关键字来进行去重查询。
例如,在使用queryWrapper进行去重查询时,你可以使用以下代码:
```java
queryWrapper.select("distinct 字段名");
```
而在SQL语句中使用distinct关键字进行去重查询时,你可以使用以下代码:
```xml
<select id="getReceiveBatchList" parameterType="map" resultType="string">
select distinct receive_batch from stereo_receive_package where receive_batch like #{month} and is_submit = '1' order by receive_batch desc
</select>
```
注意,这里的"字段名"需要替换为你要进行去重查询的字段名。
mybatisplus 去重
MyBatis-Plus 提供了 `Distinct` 方法来去重查询结果。你可以使用 `QueryWrapper` 或 `LambdaQueryWrapper` 类来构造查询条件,然后调用 `distinct` 方法进行去重查询。
示例代码:
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.select("distinct age").eq("gender", "male");
List<User> userList = userMapper.selectList(queryWrapper);
```
上面的代码会查询出所有 `gender` 为 `male` 的用户的年龄,并且去重。
另外,如果你要查询多个字段并且需要去重,可以将多个字段名用逗号分隔,例如:
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.select("distinct age, gender").eq("age", 18);
List<User> userList = userMapper.selectList(queryWrapper);
```
上面的代码会查询出所有年龄为 18 岁的用户的性别,并且去重。