使用if标签查询语句,where后面直接跟if怎么处理

有时候我们会直接在where后面跟if标签的情况

解决方案如下:

WHERE 1=1
<if test="request.orderName != null and request.orderName != ''" >
AND o.order_name = #{request.orderName}
</if>
<if test="request.contractName != null and request.request.contractName != ''" >
AND c.contract_name = #{request.contractName}
</if>
<if test="request.sheetWorkflowApplicant != null and request.sheetWorkflowApplicant != ''" >
AND swf.created_by = #{request.sheetWorkflowApplicant}
</if>
<if test="request.auditState != null and request.auditState != '' or request.auditState==0 ">
AND swf.audit_state #{request.auditState}
</if>
在where后面加1=1即可
posted @ 2019-10-10 15:07  菜鸟厌厌  阅读(1170)  评论(0)    收藏  举报