您好,登錄后才能下訂單哦!
這篇文章主要介紹了Mybatis怎么解決collection一對(duì)多問題的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇Mybatis怎么解決collection一對(duì)多問題文章都會(huì)有所收獲,下面我們一起來看看吧。
我是兩張表關(guān)聯(lián)查詢(其實(shí)是主表都全部數(shù)據(jù),但是只保存其他表的ID),主表保存有附表的數(shù)據(jù),但是需要將附表的數(shù)據(jù)整合到主表相同的目錄下,方便前臺(tái)調(diào)用。
需要的結(jié)果樣式如下圖1所示,但是獲取到的結(jié)果總是分開的,resultMap和collection節(jié)點(diǎn)內(nèi)容都對(duì)了好幾遍,寫的沒問題,但是出現(xiàn)結(jié)果如圖二所示:然后最總發(fā)現(xiàn)是主表的主鍵ID所導(dǎo)致的,因?yàn)橹鞅鞩D每條都不一樣,雖然在SQL中沒查,但是編譯器好像也會(huì)獲取,按主鍵區(qū)分,所以不能直接使用原有的主鍵內(nèi)容,組要手動(dòng)設(shè)置一個(gè),這個(gè)設(shè)置的內(nèi)容是你需要?jiǎng)澐值囊罁?jù)字段,如我是根據(jù)DIAGNOSIS_NO這個(gè)字段來劃分?jǐn)?shù)據(jù)哪些是一組的,所以用這個(gè)字段來代替主鍵id。
{ "code": 200, "msg": "成功獲取", "data": [ { "id": "", "nursingplanDtoList": [ { "id": "", "DIAGNOSIS_NO": "38.0", "FACTOR_NO": 24, "DIAGNOSIS_FACTOR": "疼痛不適。" }, { "id": "", "DIAGNOSIS_NO": "38.0", "FACTOR_NO": 25, "DIAGNOSIS_FACTOR": "活動(dòng)無耐力。" }, ], "PATIENT_ID": "20005369", "VISIT_ID": "1", "ADMISSION_DATE": "2020-09-22 10:20", } ] }
{ "code": 200, "msg": "成功獲取", "data": [ { "id": "", "nursingplanDtoList": [ { "id": "", "DIAGNOSIS_NO": "38.0", "FACTOR_NO": 24, "DIAGNOSIS_FACTOR": "疼痛不適。" } ], "PATIENT_ID": "20005369", "VISIT_ID": "1", "ADMISSION_DATE": "2020-09-22 10:20", }, { "id": "", "nursingplanDtoList": [ { "id": "", "DIAGNOSIS_NO": "38.0", "FACTOR_NO": 25, "DIAGNOSIS_FACTOR": "活動(dòng)無耐力。" } ], "PATIENT_ID": "20005369", "VISIT_ID": "1", "ADMISSION_DATE": "2020-09-22 10:20", }, ] }
Sql查詢語句
SELECT n.DIAGNOSIS_NO as id, n.PATIENT_ID, n.VISIT_ID, n.ADMISSION_DATE, n.DIAGNOSIS_NO, n.DIAGNOSIS_STATUS, n.DIAGNOSIS_SORT, n.EXPECTED_TARGET, n.START_DATE, n.STOP_DATE, n.FACTOR_ID as FACTOR_NO, n.FACTOR_STATUS, f.DIAGNOSIS_FACTOR FROM nursingDiagnosis n LEFT JOIN factorDcit f on n.FACTOR_ID=f.id WHERE n.PATIENT_ID = #{Patient_id} AND n.VISIT_ID = #{Visit_id} AND n.ADMISSION_DATE=#{Admission_Date} AND n.DIAGNOSIS_NO='38.0' ORDER BY n.DIAGNOSIS_STATUS DESC, n.DIAGNOSIS_SORT
關(guān)于“Mybatis怎么解決collection一對(duì)多問題”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“Mybatis怎么解決collection一對(duì)多問題”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。