关于Mapper文件中日期比较
对于同一天内不能用>=或者<=查出同一天的数据
Oracle:可以使用to_number函数和to_char来实现完成 sql写法:
to_number(to_char(sysdate,yyyyMMdd)) >= 20180102(类似的时间格式数据)
Mapper中写法
to_number(to_char(“时间字段”,yyyyMMdd)) >= to_number(to_char(#{日期参数},yyyyMMdd)) to_number(to_char(“时间字段”,yyyyMMdd)) <= to_number(to_char(#{日期参数},yyyyMMdd))
Mysql:可以使用cast函数和date_format来实现完成 Mapper中写法 方法一:
cast(date_format(table_name.date,%Y%m%d%H:%i:%S) as SIGNED INTEGER ) >= cast(date_format(#{日期},%Y%m%d%H:%i:%S)as SIGNED INTEGER )
方法二:
and DATE_FORMAT(`erms_apply_exp`.`submit_date`, %Y-%m-%d) <![CDATA[ >= ]]> DATE_FORMAT(#{startDate}, %Y-%m-%d) and DATE_FORMAT(`erms_apply_exp`.`submit_date`, %Y-%m-%d) <![CDATA[ <= ]]> DATE_FORMAT(#{endDate}, %Y-%m-%d)
下一篇:
MySQL数据库删除大量数据的方式