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

2023-2-17 更新

可以起始时间和结束时间一起判断

             <if test="startTime != null and endTime != null">and OPTIME &gt;= #{startTime} and OPTIME &lt;=  #{endTime}</if>

——————————————————————————————————————————

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

            <if test="endTime != null">and a.PUBLISH_DATE &lt;= #{endTime,jdbcType=DATE}</if><if test="startTime != null">and a.PUBLISH_DATE &gt;= #{startTime,jdbcType=DATE}</if>
&lt;=    <=         
&gt;=    >=

第二种方法:     使用<![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类型不用判断="",要不然会报错的。

<if test="startTime != null  and startTime != ''">

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

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

<if test="creationDate != null"><![CDATA[ AND DATE_FORMAT(a.creation_date, '%Y-%m-%d') = DATE_FORMAT(#{creationDate,jdbcType=DATE},'%Y-%m-%d')]]>
</if>

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

mybatis date类型比较,起始时间或结束时间。相关推荐

  1. oracle 返回hashmap,解决:oracle+myBatis ResultMap 类型为 map 时返回结果中存在 timestamp 时使用 jackson 转 json 报错...

    前言:最近在做一个通用查询单表的组件,所以 sql 的写法就是 select *,然后 resultType="map" ,然后使用 jackson @ResponseBody 返 ...

  2. 【Java】Date类型获取年月日时分秒的两种方法(12小时制、24小时制)

    Java的Date类型是,提供用来描述日期时间的类,它可以存储时间的年月日.时分秒的信息.但是如何从Date的实例中获取这些信息呢? 以前Date提供了一系列的get方法来获取,但是这些方法现在都被弃 ...

  3. php 获取上周日期_php 获取今日、昨日、上周、本月的起始时间戳和结束时间

    1.php获取今日开始时间戳和结束时间戳 $beginToday=mktime(0,date('m'),date('d'),date('Y'));$endToday=mktime(0,date('d' ...

  4. Java中Date类型如何向前向后滚动时间,( 附工具类)

    Java中的Date类型向前向后滚动时间(附工具类) 废话不多说,先看工具类: 1 import java.text.SimpleDateFormat; 2 import java.util.Cale ...

  5. js Date类型相关(二)——获取时间、格式化时间以及当前月第一天、最后一天

    需求 有时候项目中会遇到这些问题,比如:我想获取当前时间中的时分秒,又或者说是想单独获取年份,月份,日等.这就需要对Date类型的方法做点了解了. 还有一种场景是我想将当前时间转换成"yyy ...

  6. java方法,返回两个日期内的所有date集合,根据开始时间、结束时间得到两个时间段内所有的日期...

    在最近的项目中,有这么一个需求,根据开始时间.结束时间得到两个时间段内所有的日期,以下分享我的代码给大家. 1.以下的这个方法适用于jdk1.5以上的版本 /** * 根据开始时间和结束时间返回时间段 ...

  7. mybatis的动态sql传入Date类型的参数时,不能使用!=‘’处理

    这样写会报日期转换异常 <if test="date != null and date !=''">#{date}, </if>

  8. mybatis date类型映射_MapStruct 映射工具

    MapStruct 映射工具 本篇主要讲解MapStruct 一款映射工具,只需简单的定义一个Mapper接口,在编译期间,MapStruct将生成此接口的实现,据说MapStruct性能最高是Spr ...

  9. mybatis date类型映射_Mybatis中类型映射处理器详解

    上一篇梳理了Configuration初始化分析,今天继续typeHandlers部分. 数据库厂商标识 接上一篇文章分析,下一个解析的是databaseIdProvider节点,这个节点好理解,从字 ...

最新文章

  1. 字符串格式化---StrFormatter
  2. 【JFreeChart】JFreeChart—输出区域图
  3. Phoenix 关联hbase表历史数据
  4. 程序员要掌握的20个实用技巧
  5. DDNS实现内网服务器映射到公网(阿里云)
  6. [PHP] 日期与时间
  7. 数学之美:45幅耀眼夺目的分形艺术作品欣赏
  8. 1200万的天价离职赔偿!
  9. Linux如何清除系统密码,如何消除LINUX系统密码
  10. 计算器加减乘除优先级算法_计算器也算错数学?华为、苹果、小米内置计算器都算错了...
  11. Julia : REPL中的一些快捷键
  12. nvme固态硬盘开机慢_win10 Samsung NVMe固态硬盘测速很慢的解决方法
  13. 【4K录屏】高清录屏及剪辑软件:Bandicam 和 Captura
  14. 有关lodop.js和CLodop服务
  15. 从算法学起C语言--费氏数列
  16. vmware14下安装win7x64
  17. C语言初阶小练习(1)
  18. Linux磁盘分区与LVM详解
  19. udp 与 tcp 通信编程
  20. 关于拆项,有理函数积分,留数法

热门文章

  1. 很落地的chatgpt应用场景——批量制作抖音爆款带货文案并直接SEO霸屏1 小时前
  2. 信号与系统:第二章 线性时不变系统
  3. 华为云ECS/HECS:中小企业上云第一步
  4. npm报错:A complete log of this run can be fund in: C\Users\用户\AppData\Roaming\npm-cache_logs\解决方案(清理缓)
  5. 【带头结点的单链表】
  6. Newtonsoft.Json实现Json值的压缩(算法思路先转成object,再转回字符串)
  7. Vim教程1 Vim的语法
  8. 如何打开eml格式文件
  9. 硬核!Java 实现数据动态插入,生成 PDF、EXECL,完美导出功能!
  10. 最新emoji表情代码大全_清晨最新早安祝福语的动画表情图片大全,最新早安祝福语表情动态图片带字...