【mybatis】-- if标签判断字符串相等时失效
原mapper的sql语句如下: <select id="countOutFinishedOrdersByDeliverSign" resultType="int" > select count(1) cnt from order_customer where status = #{status} <if test="sign!=null and sign!='' and sign=='1'"> AND tms_delivery_flag is null </if> <if test="sign!=null and sign!='' and sign=='2'"> AND tms_delivery_flag = 1 </if> and last_modified_date > #{startDate} and last_modified_date <= #{endDate} </select> 以上:sign是字符串,判断等于的条件时,使用了sign=='1' 和sign=='2' 由于项目暂时还没有集成p6spy,没办法打印出sql,所以,自己按照条件拼接的sql语句到Navicat中执行,条件不一样,执行结果也不一样。但是程序接口返回的结果集却是一样的。 分析原因: sql没有问题,查询结果没有问题。然后尝试去掉了其中的判断条件 AND tms_delivery_flag is