mybatis-plus根据日期检索查询

mybatis-plus

QueryWrapper<Object> queryWrapper = new QueryWrapper<>();

 

构造条件(查询某天)

queryWrapper.apply("date_format(completion_time,'%y%m%dd')=" + "date_format('" + transaction.getCompletionTime() + "','%y%m%dd')");

 

查询某月的数据

    if (StringUtils.isNotEmpty(withdrawRecord.getCreateAt())) {
            queryWrapper.apply(" date_format(create_at,'%y%mm%') = date_format('" + withdrawRecord.getCreateAt() + "-01','%y%mm%')");
        }

 

获取相隔两日之间的数据

   if (StringUtils.isNotEmpty(orders.getBeginTime()) && orders.getBeginTime() != "") {
            wrapper.apply("date_format(create_time,'%y%m%d') >= date_format('" + orders.getBeginTime() + "','%y%m%d')");
        }
        if (StringUtils.isNotEmpty(orders.getEndTime()) && orders.getEndTime() != "") {
            wrapper.apply("date_format(create_time,'%y%m%d') <= date_format('" + orders.getEndTime() + "','%y%m%d')");
        }

 

mybatis一样的

<if test="beginTime != null and beginTime != ''"><!-- 开始时间检索 -->
                and date_format(create_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
            </if>
            <if test="endTime != null and endTime != ''"><!-- 结束时间检索 -->
                and date_format(create_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
            </if>

其中beginTime为开始时间, endTime为结束时间, 传值类一定要有。

posted @ 2021-12-09 15:57  安详的苦丁茶  阅读(4508)  评论(0编辑  收藏  举报