欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MybatisPlus結(jié)合groupby實現(xiàn)分組和sum求和的步驟

 更新時間:2023年12月11日 09:53:42   作者:知識淺談  
這篇文章主要介紹了MybatisPlus結(jié)合groupby實現(xiàn)分組和sum求和的步驟,這次使用的是LambdaQueryWrapper,使用QueryWrapper相對來說簡單點就不寫了,本文分步驟給大家介紹的非常詳細,感興趣的朋友一起看看吧

?MybatisPlus結(jié)合groupby實現(xiàn)分組和sum求和

這次使用的是LambdaQueryWrapper,使用QueryWrapper相對來說簡單點就不寫了

??實現(xiàn)GroupBy分組

第一步: 實體類中新增一個字段count

@TableName(value ="user")
@Data
public class User implements Serializable {
    @TableId(type = IdType.AUTO)
    private Integer id;
    @TableField(value = "name")
    private String name;
    @TableField(value = "age")
    private Integer age;
    @TableField(value = "state")
    private String state;
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
	//這個地方
    @TableField(value = "count(*)",insertStrategy = FieldStrategy.NEVER,updateStrategy = FieldStrategy.NEVER)
    private  Integer count;
}

第二步:查詢接口中修改

   @GetMapping("/count")
   public List<User> count(){
       new QueryWrapper<>()
       LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>();
       queryWrapper.select(User::getState,User::getCount);
       queryWrapper.groupBy(User::getState);
       List<User> list = userService.list(queryWrapper);
       return list;
   }

返回的結(jié)果

[
  {
    "id": null,
    "name": null,
    "age": null,
    "state": "1",
    "count": 3
  },
  {
    "id": null,
    "name": null,
    "age": null,
    "state": "2",
    "count": 2
  }
]

??實現(xiàn)GroupBy分組之后再sum求和

第一步: 實體類中新增一個字段count

@TableName(value ="user")
@Data
public class User implements Serializable {
    @TableId(type = IdType.AUTO)
    private Integer id;
    @TableField(value = "name")
    private String name;
    @TableField(value = "age")
    private Integer age;
    @TableField(value = "state")
    private String state;
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
    @TableField(value = "count(*)",insertStrategy = FieldStrategy.NEVER,updateStrategy = FieldStrategy.NEVER)
    private  Integer count;
	//這個地方
    @TableField(value = "sum(age)",insertStrategy = FieldStrategy.NEVER,updateStrategy = FieldStrategy.NEVER)
    private  Integer ages;
}

第二步:查詢接口中修改

   @GetMapping("/count")
   public List<User> count(){
       new QueryWrapper<>()
       LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>();
       //這個地方新增了一個字段
       queryWrapper.select(User::getState,User::getCount,User::getAges);
       queryWrapper.groupBy(User::getState);
       List<User> list = userService.list(queryWrapper);
       return list;
   }

返回的結(jié)果

[
  {
    "id": null,
    "name": null,
    "age": null,
    "state": "1",
    "count": 3,
    "ages": 6
  },
  {
    "id": null,
    "name": null,
    "age": null,
    "state": "2",
    "count": 2,
    "ages": 9
  }
]

??總結(jié)

到此這篇關于MybatisPlus結(jié)合groupby實現(xiàn)分組和sum求和的文章就介紹到這了,更多相關MybatisPlus分組sum求和內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Spring?Web?MVC基礎理論概念

    Spring?Web?MVC基礎理論概念

    Spring?Web?MVC是基于Servlet?API構(gòu)建的原始Web框架,從?開始就包在Spring框架中,Spring?Web?MVC是一個Web框,本文給大家介紹Spring?Web?MVC基礎理論,感興趣的朋友一起看看吧
    2024-08-08
  • jstl標簽基礎開發(fā)步驟(詳解)

    jstl標簽基礎開發(fā)步驟(詳解)

    下面小編就為大家?guī)硪黄猨stl標簽基礎開發(fā)步驟(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • Spring Boot異常處理靜止trace

    Spring Boot異常處理靜止trace

    這篇文章主要介紹了Spring Boot異常處理靜止trace,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Java多線程之 FutureTask:帶有返回值的函數(shù)定義和調(diào)用方式

    Java多線程之 FutureTask:帶有返回值的函數(shù)定義和調(diào)用方式

    這篇文章主要介紹了Java多線程之 FutureTask:帶有返回值的函數(shù)定義和調(diào)用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • 詳解Java使用JDBC連接MySQL數(shù)據(jù)庫

    詳解Java使用JDBC連接MySQL數(shù)據(jù)庫

    本文詳細講解了Java使用JDBC連接MySQL數(shù)據(jù)庫的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-01-01
  • 如何在Java中創(chuàng)建線程通信的四種方式你知道嗎

    如何在Java中創(chuàng)建線程通信的四種方式你知道嗎

    開發(fā)中不免會遇到需要所有子線程執(zhí)行完畢通知主線程處理某些邏輯的場景?;蛘呤蔷€程 A 在執(zhí)行到某個條件通知線程 B 執(zhí)行某個操作。下面我們來一起學習如何解決吧
    2021-09-09
  • 理解JDK動態(tài)代理為什么必須要基于接口

    理解JDK動態(tài)代理為什么必須要基于接口

    這篇文章主要介紹了理解JDK動態(tài)代理為什么必須要基于接口,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Java concurrency集合之ConcurrentSkipListSet_動力節(jié)點Java學院整理

    Java concurrency集合之ConcurrentSkipListSet_動力節(jié)點Java學院整理

    這篇文章主要為大家詳細介紹了Java concurrency集合之ConcurrentSkipListSet的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • JAVA中static方法的用法實例詳解

    JAVA中static方法的用法實例詳解

    這篇文章主要介紹了JAVA中static方法的用法,結(jié)合實例形式較為詳細的分析了Java中static方法的功能、使用技巧與相關注意事項,需要的朋友可以參考下
    2015-12-12
  • 解決idea每次新建項目都需要重新指定maven目錄

    解決idea每次新建項目都需要重新指定maven目錄

    這篇文章主要介紹了解決idea每次新建項目都需要配置maven,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09

最新評論