zoukankan      html  css  js  c++  java
  • mybatis date类型比较

    如果数据库是时间类型而且你传的值也是时间类型,可以直接比较。

    第一种方法:    把转义字符">"和"<"替换掉.

    <if test="startTime != null ">
        AND order_date &gt;= #{startTime,jdbcType=DATE} 
    </if>
    <if test="endTime != nul ">
        AND order_date &lt;= #{endTime,jdbcType=DATE} 
    </if>

    第二种方法:     使用<![CDATA[ ]]>符号进行说明,将此类符号不进行解析 

    <if test="startTime != null ">
        AND <![CDATA[ order_date >= #{startTime,jdbcType=DATE}  ]]>
    </if>
    <if test="endTime != null ">
        AND <![CDATA[ order_date <= #{endTime,jdbcType=DATE}  ]]> 
    </if>

    注意date类型不用判断="",要不然会报错的。

    并且jdbcType=DATE,参数中的date格式为yyyy-mm-dd,不带时分秒,查询到某天这种。

    如果需要精确到时分秒,需要将jdbcType设置成TIMESTAMP。

    参考:https://blog.csdn.net/u010526028/article/details/74315775/

    jdbcType=DATE的时候 只能和2018-09-06比较。

    有格式的日期比较,可以使用date_format方法

    <if test="creationDate != null">
                    <![CDATA[ AND DATE_FORMAT(a.creation_date, '%Y-%m-%d') = DATE_FORMAT(#{creationDate,jdbcType=DATE},'%Y-%m-%d')]]>
                </if>
  • 相关阅读:
    最近我总结的常用mate标签-常用mate标签
    同一个世界(erlang解题答案)
    ranch 源码分析(完)
    ranch 源码分析(三)
    ranch 源码分析(二)
    ranch 源码分析(一)
    port 执行命令的封装和参数详解
    erlang 笔记(06/03/02)
    recon工具解读
    erlang调试方法
  • 原文地址:https://www.cnblogs.com/majw/p/11238914.html
Copyright © 2011-2022 走看看