亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

mybatis如何返回某列的最大值

 更新時(shí)間:2021年07月22日 09:45:22   作者:、唐城  
這篇文章主要介紹了mybatis如何返回某列的最大值操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mybatis返回某列的最大值

Mapper文件中sql:

<select id="queryMaxId" resultType="Integer"> 
select Max(id) as id from table
<select>

resultType:以數(shù)據(jù)庫(kù)對(duì)應(yīng)ID屬性自定義

SQL

select * from table  where id=(select MAX(id) from table ) 

mybatis返回最大值max,最小值min,vag,count函數(shù)和其他字段等對(duì)應(yīng)接口返回值的處理方式

我們?cè)趚ml文件寫(xiě)sql同時(shí)進(jìn)行數(shù)據(jù)庫(kù)查詢max,min,sum,avg,count函數(shù)或其他字段,不清楚返回值怎么獲取,看下去,你不會(huì)后悔O(∩_∩)O

面對(duì)這些求最大值,最小值,平均值或者夾雜著其他字段等,單個(gè)出現(xiàn)就正常返回Integer或者Long或著String就可以

如果同時(shí)出現(xiàn)很多個(gè),那最簡(jiǎn)單的方法就是封裝一個(gè)實(shí)體對(duì)象

案例:

/**
 * 封裝的實(shí)體對(duì)象,屬性對(duì)應(yīng)你的查詢結(jié)果字段,根據(jù)自己的情況添加
 */
@Data
public class MaxAndMinVA implements Serializable {
    private static final long serialVersionUID = 1L; 
    private String address; 
    private Double maxVoltage; 
    private Double maxElectricity; 
    private Double minVoltage; 
    private Double minElectricity;
}

在mysql中,很簡(jiǎn)單,直接正常寫(xiě)sql就可以

舉例:

select device.address,max(va.voltage),max(va.electricity),min(va.voltage),min(va.electricity) from device left join va on device.id=va.device_id GROUP BY va.device_id

在xml文件中,需要注意:每個(gè)計(jì)算的最大值,最小值需要起別名(這個(gè)別名必須對(duì)應(yīng)你的實(shí)體表屬性名,不然查詢出來(lái)的是null),數(shù)據(jù)庫(kù)中的字段不用起別名,例如address,起別名只針對(duì)求最大值,平均值等

舉例:

<select id="va" resultType="com.cn.VO.MaxAndMinVA"> 
 select device.address,max(va.voltage) as maxVoltage,max(va.electricity) as maxElectricity,min(va.voltage) as minVoltage,min(va.electricity) as minElectricity from device left join va on device.id=va.device_id GROUP BY va.device_id
</select>

mapper接口:(我查詢的是一堆結(jié)果對(duì)象,如果你查詢一個(gè),也可以傳參數(shù),自己看著改吧)

List<MaxAndMinVA> va();

這時(shí)就正常測(cè)試就可以看到結(jié)果了

重點(diǎn)提醒:xml文件中sql起別名as一定要對(duì)應(yīng)實(shí)體類屬性名,不然會(huì)查詢出null(不信你可以試一下)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解Java多線程與并發(fā)

    詳解Java多線程與并發(fā)

    多線程是一個(gè)進(jìn)程在執(zhí)行過(guò)程中產(chǎn)生多個(gè)更小的程序單元,這些更小的單元稱為線程,這些線程可以同時(shí)存在,同時(shí)運(yùn)行,一個(gè)進(jìn)程可能包含多個(gè)同時(shí)執(zhí)行的線程。多線程是實(shí)現(xiàn)并發(fā)機(jī)制的一種有效手段。進(jìn)程和線程一樣,都是實(shí)現(xiàn)并發(fā)的一個(gè)基本單位。
    2021-06-06
  • 詳解如何在spring中創(chuàng)建全局異常處理器

    詳解如何在spring中創(chuàng)建全局異常處理器

    全局異常處理器在實(shí)際項(xiàng)目開(kāi)發(fā)中是一個(gè)很重要的工具,對(duì)保證代碼的正常運(yùn)行有很重要的作用,所以下面來(lái)講一下如何在spring中創(chuàng)建一個(gè)全局異常處理器,感興趣的的朋友可以參考下
    2023-12-12
  • Spring啟動(dòng)過(guò)程源碼分析及簡(jiǎn)介

    Spring啟動(dòng)過(guò)程源碼分析及簡(jiǎn)介

    本文是通過(guò)AnnotationConfigApplicationContext讀取配置類來(lái)一步一步去了解Spring的啟動(dòng)過(guò)程。本文重點(diǎn)給大家介紹Spring啟動(dòng)過(guò)程源碼分析及基本概念,感興趣的朋友一起看看吧
    2021-10-10
  • Junit測(cè)試多線程無(wú)法得到結(jié)果的問(wèn)題解決

    Junit測(cè)試多線程無(wú)法得到結(jié)果的問(wèn)題解決

    在測(cè)試一個(gè)文件轉(zhuǎn)換工具類的時(shí)候,發(fā)生一個(gè)有趣的現(xiàn)象,同樣的輸入,使用Main函數(shù)可以正確解析,得到結(jié)果,使用Junit卻無(wú)法得到結(jié)果,神奇的是,即使捕獲Throwable,也無(wú)法捕獲到仍和異常。
    2021-05-05
  • JavaWeb中的組件Filter過(guò)濾器解析

    JavaWeb中的組件Filter過(guò)濾器解析

    這篇文章主要介紹了JavaWeb中的組件Filter過(guò)濾器解析,Filter過(guò)濾器是一種用于處理和轉(zhuǎn)換數(shù)據(jù)的工具,常用于Web開(kāi)發(fā)中,它可以在請(qǐng)求到達(dá)服務(wù)器之前或響應(yīng)返回給客戶端之前對(duì)數(shù)據(jù)進(jìn)行預(yù)處理或后處理,需要的朋友可以參考下
    2023-10-10
  • Spring Bean配置方式總結(jié)

    Spring Bean配置方式總結(jié)

    定義Spring Bcan的3種方式分別是:基于XML 的方式配置、基于注解掃播方式配置、基于元數(shù)據(jù)類的配置,本文就通過(guò)代碼示例給大家詳細(xì)講講這三種配置方式,需要的朋友可以參考下
    2023-12-12
  • (starters)springboot-starter整合阿里云datahub方式

    (starters)springboot-starter整合阿里云datahub方式

    這篇文章主要介紹了(starters)springboot-starter整合阿里云datahub方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Java并發(fā)之嵌套管程鎖死詳解

    Java并發(fā)之嵌套管程鎖死詳解

    這篇文章主要介紹了Java并發(fā)之嵌套管程鎖死詳解,涉及嵌套管程鎖死的發(fā)生,實(shí)例等相關(guān)內(nèi)容,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • Spring boot項(xiàng)目使用thymeleaf模板過(guò)程詳解

    Spring boot項(xiàng)目使用thymeleaf模板過(guò)程詳解

    這篇文章主要介紹了Spring boot項(xiàng)目使用thymeleaf模板過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Java的MyBatis框架中MyBatis Generator代碼生成器的用法

    Java的MyBatis框架中MyBatis Generator代碼生成器的用法

    這篇文章主要介紹了Java的MyBatis框架中Mybatis Generator代碼生成器的用法,Mybatis Generator主要被用來(lái)生成繁瑣的配置文件來(lái)提高效率,需要的朋友可以參考下
    2016-04-04

最新評(píng)論