mybatis多表联合查询的写法
xml
<select id="getUnitUserComsumes" parameterType="com.zbkj.common.request.UnitUserComsumeRequest"
resultType="java.util.List" resultMap="itemResultMap">
select znu.real_name,ze.enterprise_name,zd.name,zc.canteen_name,ub.pay_code,ub.number,ub.create_time
from eb_user_bill ub
inner join zn_enterprise_user znu
on znu.uid = ub.uid
left join zn_enterprise ze
on znu.enterprise_id = ze.id
left join zn_canteen zc
on zc.enterprise_id = ze.id
left join zn_device zd
on zd.canteen_id = zc.id
where 1=1 and ub.pm = 0
<if test="request.deviceId != null and request.deviceId !=0">
and zd.id = #{request.deviceId}
</if>
<if test="request.canteenId != null and request.canteenId !=0">
and zc.id = #{request.canteenId}
</if>
<if test="request.enterpriseId != null and request.enterpriseId !=0">
and ze.id = #{request.enterpriseId}
</if>
<if test="request.startTime !=null and request.startTime != ''">
and ub.create_time <![CDATA[ >= ]]> #{request.startTime}
</if>
<if test="request.endTime !=null and request.endTime != ''">
and ub.create_time <![CDATA[ <= ]]> #{request.endTime}
</if>
order by ub.create_time desc
</select>
Mapper类
List<UnitUserComsumeResponse> getUnitUserComsumes(@Param("request") UnitUserComsumeRequest request);
判断条件需要带上 Mapper类中方法签名的名称
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示