Mybatis和Mybatis-Plus时间范围查询方式
时间:2022-04-08 10:45:48|栏目:JAVA代码|点击: 次
一、mysql
1.传入时间范围参数类型是字符串
<if test="startTime!=null and startTime.trim() neq ''">
and date_format(create_time,'%Y-%m-%d %H:%i:%s') >= str_to_date(#{startTime},'%Y-%m-%d %H:%i:%s')
</if>
<if test="endTime!=null and endTime.trim() neq ''">
and date_format(create_time,'%Y-%m-%d %H:%i:%s') <= str_to_date(#{endTime},'%Y-%m-%d %H:%i:%s')
</if>
2.传入时间范围参数类型是Date
<if test="startTime!=null and startTime.trim() neq ''">
and date_format(create_time,'%Y-%m-%d %H:%i:%s') >= date_format(#{startTime},'%Y-%m-%d %H:%i:%s')
</if>
<if test="endTime!=null and endTime.trim() neq ''">
and date_format(create_time,'%Y-%m-%d %H:%i:%s') <= date_format(#{endTime},'%Y-%m-%d %H:%i:%s')
</if>
3.Mybatis-Plus时间范围查询
Page<Record> page = new Page<>(page, limit);
IPage<Record> result = iRecordService.page(page,
new LambdaQueryWrapper<Record>()
.apply(StrUtil.isNotBlank(start_date),
"date_format (optime,'%Y-%m-%d') >= date_format('" + start_date + "','%Y-%m-%d')")
.apply(StrUtil.isNotBlank(end_date),
"date_format (optime,'%Y-%m-%d') <= date_format('" + end_date + "','%Y-%m-%d')")
.orderByDesc(HmsFaceDetectLog::getOptime));
Mybatis Plus 时间查询无效
错误写法
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
QueryWrapper query = new QueryWrapper();
query.ge("create_time", LocalDateTime.parse("2019-05-13 23:00:00", df));
正确写法
query.apply("UNIX_TIMESTAMP(create_time) >= UNIX_TIMESTAMP('" + "2019-05-12 03:00:00" + "')");
上一篇:maven的pom文件与打包详解
栏 目:JAVA代码
本文标题:Mybatis和Mybatis-Plus时间范围查询方式
本文地址:http://www.codeinn.net/misctech/198502.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




