mybatis 动态sql里面关于时间区间查询的表示方式

本文介绍了在MyBatis中进行时间区间查询的两种情况:针对datetime或date类型,使用DATE_FORMAT进行格式匹配;对于varchar类型,直接比较字符串。同时展示了对应的XML动态SQL片段和前端页面输入日期的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在项目中查询时间段的sql语句(时间类型为datetime或date):
<if test="pojo.begintime!=null and pojo.begintime!=''">
<![CDATA[   and DATE_FORMAT(tr.summary_date, '%Y-%m-%d')>=  DATE_FORMAT(#{pojo.begintime}, '%Y-%m-%d')   ]]>
</if>
<if test="pojo.endtime!=null and pojo.endtime!=''">
<![CDATA[  and DATE_FORMAT(tr.summary_date, '%Y-%m-%d') <= DATE_FORMAT(#{pojo.endtime}, '%Y-%m-%d')    ]]>
</if>
 在项目中查询时间段的sql语句(时间类型为varchar):
<if test="excelImport_date_begin != null and excelImport_date_begin != '' ">
            AND
            tm.excelImport_date&gt;=#{excelImport_date_begin}
</if>
<if test="excelImport_date_end != null and excelImport_date_end != '' ">
            AND
            tm.excelImport_date    &lt;=#{excelImport_date_end}
</if>


&lt;小于号  <      &gt; 大于号>
页面的源码:
 <input id="begintime" class="Wdate date_text" type="text"
onclick="WdatePicker({el:'begintime'})" name="qureyBean.begintime"
value="<s:property value="@com.hljw.util.UncDate@shortDate(qureyBean.begintime)" />" />
至<input id="endtime" class="Wdate date_text" type="text"
onclick="WdatePicker({el:'endtime'})" name="qureyBean.endtime"
value="<s:property value="@com.hljw.util.UncDate@shortDate(qureyBean.endtime)" />" 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值