mysql一對(duì)多關(guān)聯(lián)查詢分頁錯(cuò)誤問題的解決方法
xml問價(jià)中查詢數(shù)據(jù)中包含list,需要使用collection
<resultMap id="XX" type="com.XXX.XXXX"> <id column="o_id" jdbcType="BIGINT" property="id" /> <result column="o_user_id" jdbcType="BIGINT" property="userId" /> .... <collection property="orderProductList" ofType="com.XXXXXX.XXXXX"> <id column="p_id" jdbcType="BIGINT" property="id" /> <result column="p_order_id" jdbcType="BIGINT" property="orderId" /> .... </collection> </resultMap>
這樣的查詢系統(tǒng)封裝的通用分頁查詢是不對(duì)的,所以需要自己sql中加入分頁解決
<select id="XXX" resultMap="OrderListMap"> SELECT you.nick_name, yo.id o_id, yo.user_id o_user_id FROM ( SELECT * FROM youpin_order WHERE 1 = 1 <if test="status != null"> and `status` = #{status} </if> <if test="page != null and limit != null"> LIMIT #{page}, #{limit} </if> ) yo LEFT JOIN XXX yop ON yo.id = yop.order_id LEFT JOIN XXXX you ON yo.user_id = you.id </select>
傳入?yún)?shù)的時(shí)候需要計(jì)算
(offset - 1) * limit, limit
總結(jié)
以上所述是小編給大家介紹的mysql一對(duì)多關(guān)聯(lián)查詢分頁錯(cuò)誤問題的解決方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
mysql中取系統(tǒng)當(dāng)前時(shí)間,當(dāng)前日期方便查詢判定的代碼
今天在寫一段查詢語句的時(shí)候,需要判定結(jié)束日期是不是大于當(dāng)前日期,一般情況下都是通過php判定日期,然后查詢。2011-12-12史上最簡(jiǎn)單的MySQL數(shù)據(jù)備份與還原教程(下)(三十七)
這篇文章主要為大家詳細(xì)介紹了史上最簡(jiǎn)單的MySQL數(shù)據(jù)備份與還原教程下篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10Mysql之如何根據(jù).frm和.idb文件恢復(fù)表結(jié)構(gòu)
這篇文章主要介紹了Mysql之如何根據(jù).frm和.idb文件恢復(fù)表結(jié)構(gòu)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03Mysql5.7定時(shí)備份的實(shí)現(xiàn)
這篇文章主要介紹了Mysql5.7定時(shí)備份的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11