mybatis 时间区间比较

直接上代码,此时数据库使用的Date类型:

    <if test="minCreateTime != null and  minCreateTime != ''">
            <![CDATA[ and g.create_time >= to_date(#{minCreateTime,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
        </if>
        <if test="maxCreateTime != null and  maxCreateTime != ''">
            <![CDATA[ and g.create_time <= to_date(#{maxCreateTime,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
        </if>

若是字符串类型,也可以直接比较,如下:

       <if test="createTime != null">
                AND CREATE_TIME = CONCAT(CONCAT('%', #{createTime,jdbcType=DATE}), '%')
            </if>
            <if test="updateTime != null">
                AND UPDATE_TIME = CONCAT(CONCAT('%', #{updateTime,jdbcType=DATE}), '%')
            </if>

<if test="minCreateTime != null and  minCreateTime != ''">
            <![CDATA[ and g.create_time >= to_date(#{minCreateTime,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
        </if>
        <if test="maxCreateTime != null and  maxCreateTime != ''">
            <![CDATA[ and g.create_time <= to_date(#{maxCreateTime,jdbcType=DATE},'yyyy-MM-dd hh24:mi:ss')]]>
        </if>

原文地址:https://www.cnblogs.com/sloveling/p/5086267.html