Mybatis和Mybatis-Plus时间范围查询,亲测有效

一、mysql

1.传入时间范围参数类型是字符串

 
    and date_format(create_time,'%Y-%m-%d %H:%i:%s') >= str_to_date(#{startTime},'%Y-%m-%d %H:%i:%s')
  
  
    and date_format(create_time,'%Y-%m-%d %H:%i:%s') <= str_to_date(#{endTime},'%Y-%m-%d %H:%i:%s')
  

2.传入时间范围参数类型是Date

 
    and date_format(create_time,'%Y-%m-%d %H:%i:%s') >= date_format(#{startTime},'%Y-%m-%d %H:%i:%s')
  
  
    and date_format(create_time,'%Y-%m-%d %H:%i:%s') <= date_format(#{endTime},'%Y-%m-%d %H:%i:%s')
  

3.Mybatis-Plus时间范围查询

 Page page = new Page<>(page, limit);
 IPage result = iRecordService.page(page,
        new LambdaQueryWrapper()
            .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和Mybatis-Plus时间范围查询,亲测有效)