基于mybatis一對(duì)多查詢內(nèi)層排序的問(wèn)題
mybatis一對(duì)多查詢內(nèi)層排序
<!--根據(jù)板塊id查詢所有主題->指標(biāo)->維度--> <resultMap id="TitleDimensionMap" type="com.etouch.admincenter.bean.ZhmdDiagnosisTitleBean"> <id column="title_id" property="id"/> <result column="title_name" property="titleName"/> <collection property="diagnosisKpiBeanList" ofType="com.etouch.admincenter.bean.ZhmdDiagnosisKpiBean"> <id column="kpi_id" property="id"/> <result column="kpi_name" property="kpiName"/> <result column="kpi_type" property="kpiType"/> <result column="calculate_method" property="calculateMethod"/> <result column="is_add_description" property="isAddDescription"/> <result column="description_remind" property="descriptionRemind"/> <result column="input_description" property="inputDescription"/> <result column="kpi_industry_standard" property="kpiIndustryStandard"/> <result column="kpi_brand_standard" property="kpiBrandStandard"/> <result column="kpi_industry_standard_diff" property="kpiIndustryStandardDiff"/> <result column="kpi_brand_standard_diff" property="kpiBrandStandardDiff"/> <result column="input_description" property="inputDescription"/> <result column="kpi_description" property="kpiDescription"/> <collection property="dimensionBeans" ofType="com.etouch.admincenter.bean.ZhmdDiagnosisKpiDimensionBean"> <id column="kpi_dimension_id" property="id"/> <result column="diagnosis_id" property="diagnosisId"/> <result column="dimension_name" property="dimensionName"/> <result column="dimension_value" property="dimensionValue"/> </collection> </collection> </resultMap>
可設(shè)置多個(gè)排序規(guī)則,這樣展示到前端頁(yè)面時(shí),解決每次打開(kāi)頁(yè)面顯示順序都不一樣的問(wèn)題
<select id="getDimensionOneStep" resultMap="TitleDimensionMap"> ? ? ?select ? ? zdt.id as title_id,zdt.title_name, ? ? zdk.id as kpi_id,zdk.kpi_name,zdk.kpi_type,zdk.calculate_method,zdk.is_add_description,zdk.description_remind,zdk.kpi_description, ? ? zdkd.id as kpi_dimension_id, zdkd.dimension_name,zdd.dimension_value, ? ? zdkpd.input_description ? ? from zhmd_diagnosis_title zdt ? ? left join zhmd_diagnosis_kpi zdk on zdk.diagnosis_title_id = zdt.id ? ? left join zhmd_diagnosis_kpi_dimension zdkd on zdkd.diagnosis_kpi_id = zdk.id ? ? left join zhmd_dimension_diagnosis zdd on ?zdd.dimension_id = zdkd.id and zdd.diagnosis_id = #{diagnosisId} ? ? left join zhmd_diagnosis_kpi_problem_desc zdkpd on zdkpd.kpi_id = zdk.id and zdkpd.diagnosis_id =#{diagnosisId} ? ? where zdt.diagnosis_model_id = #{modelId} ? ? order by zdt.create_date desc,zdk.create_date desc,zdkd.dimension_sort asc </select>
postman查詢結(jié)果
mybatis多排序問(wèn)題
在很多業(yè)務(wù)場(chǎng)景中,會(huì)有多排序問(wèn)題,mybatis支持多排序,寫(xiě)法如下:
ORDER BY contract.contractCount DESC, reward.rewardTotal DESC, new_job.newJobCount DESC
這種寫(xiě)法是根據(jù)最左邊的字段進(jìn)行第一排序,如果第一排序字段有并列的,則根據(jù)第二字段再去排一次,依次類(lèi)推。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- 解析Mybatis對(duì)sql表的一對(duì)多查詢問(wèn)題
- 關(guān)于mybatis一對(duì)一查詢一對(duì)多查詢遇到的問(wèn)題
- MybatisPlus實(shí)現(xiàn)對(duì)象嵌套關(guān)聯(lián)查詢一對(duì)多List集合查詢
- springboot使用mybatis一對(duì)多的關(guān)聯(lián)查詢問(wèn)題記錄
- 在MyBatis中實(shí)現(xiàn)一對(duì)多查詢和多對(duì)一查詢的方式詳解(各兩種方式)
- 解決mybatis一對(duì)多查詢r(jià)esultMap只返回了一條記錄問(wèn)題
- Mybatis一對(duì)多和多對(duì)一處理的深入講解
- springboot整合mybatis實(shí)現(xiàn)簡(jiǎn)單的一對(duì)多級(jí)聯(lián)查詢功能
- MyBatis圖文并茂講解注解開(kāi)發(fā)一對(duì)多查詢
相關(guān)文章
Java中的HashSet詳解和使用示例_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
HashSet 是一個(gè)沒(méi)有重復(fù)元素的集合。接下來(lái)通過(guò)實(shí)例代碼給大家介紹java中的hashset相關(guān)知識(shí),感興趣的朋友一起看看吧2017-05-05Java HTTP協(xié)議收發(fā)MQ 消息代碼實(shí)例詳解
這篇文章主要通過(guò)實(shí)例代碼為大家詳細(xì)介紹了如何在Java 環(huán)境下使用 HTTP 協(xié)議收發(fā) MQ 消息,需要的朋友可以參考下2017-04-04SpringBoot中的FailureAnalyzer使用詳解
這篇文章主要介紹了SpringBoot中的FailureAnalyzer使用詳解,Spring Boot的FailureAnalyzer是一個(gè)接口,它用于在Spring Boot應(yīng)用啟動(dòng)失敗時(shí)提供有關(guān)錯(cuò)誤的詳細(xì)信息,這對(duì)于開(kāi)發(fā)者來(lái)說(shuō)非常有用,因?yàn)樗梢詭椭覀兛焖僮R(shí)別問(wèn)題并找到解決方案,需要的朋友可以參考下2023-12-12Spring Boot自定義favicon實(shí)現(xiàn)方法實(shí)例解析
這篇文章主要介紹了Spring Boot自定義favicon實(shí)現(xiàn)方法實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08解決jpa查詢語(yǔ)句自動(dòng)變成了update的問(wèn)題
這篇文章主要介紹了解決jpa查詢語(yǔ)句自動(dòng)變成了update的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08Spring-webflux?響應(yīng)式編程的實(shí)例詳解
Spring 提供了兩個(gè)并行堆棧,一種是基于帶有 Spring MVC 和 Spring Data 結(jié)構(gòu)的 Servlet API,另一個(gè)是完全反應(yīng)式堆棧,它利用了 Spring WebFlux 和 Spring Data 的反應(yīng)式存儲(chǔ)庫(kù),這篇文章主要介紹了Spring-webflux?響應(yīng)式編程,需要的朋友可以參考下2022-09-09