mysql一對多關(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)封裝的通用分頁查詢是不對的,所以需要自己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一對多關(guān)聯(lián)查詢分頁錯(cuò)誤問題的解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對本站網(wǎng)站的支持!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信