mybatis对不同日期格式的查询查询Mysql数据库

总结一些目前遇到的,对日期范围的查询,

总共遇到几种分别记录下处理方式;

①:前端传入日期参数格式:YYYY-MM-DD,如:

{
	"startDateStr":"2019-05-16",
	"endDateStr":"2019-05-16"
}

而此时数据存的格式为:YYYY-MM-DD hh:mm:ss

这时候我采用的查询方法是直接查询,先将传过来的数据分成两种,1、开始日期=结束日期(也就是查询今天的数据)

2、开始时间不等于结束时间

<if test="query.startDateStr==query.endDateStr and query.startDateStr != null and query.startDateStr != '' and query.endDateStr != null and query.endDateStr != ''">
		  and  DATE_FORMAT( log_operate_time, '%Y-%m-%d' )  =  DATE_FORMAT( #{query.startDateStr}, '%Y-%m-%d' ) 
		</if>
		<if test="query.startDateStr!=query.endDateStr">
		  <if test="query.startDateStr != null and query.startDateStr != '' ">
			and log_operate_time &gt;  DATE_FORMAT( #{query.startDateStr}, '%Y-%m-%d 00:00:00' ) 
		  </if>
		  <if test="query.endDateStr != null and query.endDateStr != '' ">
			and log_operate_time &lt; DATE_FORMAT( #{query.endDateStr}, '%Y-%m-%d 23:59:59' )  
		  </if>
		</if>

方法①采用先判断传入的  开始时间?=结束时间   要是等于,就查询今天的数据;要是不等于就查询log_operate_time在开始时间和结束时间的范围数据

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章