
<if test="startTime!=null && startTime!=‘‘"> 
        send_time <![CDATA[>=]]>  #{startTime}
    <!--   <![CDATA[ DATE_FORMAT(send_time, ‘%Y-%m-%d‘)>=  DATE_FORMAT(#{startTime}, ‘%Y-%m-%d‘)   ]]>  -->
</if>  
<if test="endTime!=null endTime!=‘‘">  
        and send_time <![CDATA[<=]]>  #{endTime}
    <!--  <![CDATA[  and DATE_FORMAT(send_time, ‘%Y-%m-%d‘) <= DATE_FORMAT(#{endTime}, ‘%Y-%m-%d‘)    ]]>  -->
</if>  
这样就可以实现只选择开始时间或者只选择结束时间,同时选择开始时间和结束时间来进行查询了。
注意:如果传入的时间段参数startTime和endTime是Date类型,则需要将与空字符串比较的判断去掉,否则会出现异常提示### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String
原文:https://www.cnblogs.com/xian-yu/p/13262286.html