Mybatis的example分组
时间: 2023-06-22 17:39:01 浏览: 438
Mybatis的Example类可以用于构建查询条件,其中包括分组查询。在Example中使用分组查询可以通过`Criteria`对象的`groupBy`方法实现,例如:
```java
Example example = new Example(User.class);
Criteria criteria = example.createCriteria();
criteria.andEqualTo("status", 1)
.andGreaterThan("age", 18)
.andLessThan("age", 30)
.andLike("name", "%张%");
criteria.groupBy("gender");
```
以上代码表示查询User表中状态为1,年龄在18至30之间,姓名中包含“张”的用户,并按照性别进行分组。
当然,在进行分组查询时,还可以使用聚合函数,例如求和、平均值等。可以在`Criteria`对象的`selectProperties`方法中指定需要查询的字段,并在`groupBy`方法中指定分组字段,例如:
```java
Example example = new Example(User.class);
Criteria criteria = example.createCriteria();
criteria.andEqualTo("status", 1)
.andGreaterThan("age", 18)
.andLessThan("age", 30)
.andLike("name", "%张%");
criteria.selectProperties("gender", "count(id) as total")
.groupBy("gender");
```
以上代码表示查询User表中状态为1,年龄在18至30之间,姓名中包含“张”的用户,统计每个性别的用户数量,并按照性别进行分组。
阅读全文