Mybatis-Plus按昨天、今天、明天、近?天,自定义起始时间查询
1|01. 前端需要
2|02. 后端 0SQL 实现
实体类主要字段:
public class DemoEntity implements Serializable { private static final long serialVersionUID = 1L; @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty("创建时间") private Date createTime; @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty("更新时间") private Date updateTime; /** * 查询时间 */ @TableField(exist = false) @ApiModelProperty(value = "查询类型:1-今天,2-昨天,3-近?天,4-自定义起止时间") private Integer queryType; @TableField(exist = false) @ApiModelProperty(value = "queryType为3时指定的天数") private Integer queryDay; @TableField(exist = false) @ApiModelProperty(value = "queryType为4时的起始时间") private Date queryStartTime; @TableField(exist = false) @ApiModelProperty(value = "queryType为4时的结束时间") private Date queryEndTime; }service的实现代码:
QueryWrapper<DemoEntity> queryWrapper = new QueryWrapper<>(); // 添加时间(查询类型:1-今天,2-昨天,3-近?天,4-自定义起止时间) if (entity.getQueryType()!= null) { switch (entity.getQueryType()) { case 1: queryWrapper.apply(true, "TO_DAYS(NOW())-TO_DAYS(create_time) = 0"); break; case 2: queryWrapper.apply(true, "TO_DAYS(NOW())-TO_DAYS(create_time) = 1"); break; case 3: queryWrapper.apply(true, "DATE_SUB(CURDATE(), INTERVAL "+ entity.getQueryDay() +" DAY) <= date(create_time)"); break; case 4: java.text.DateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); String startTime = sdf.format(entity.getQueryStartTime()); String endTime = sdf.format(entity.getQueryEndTime()); queryWrapper.apply(true, "create_time between '"+ startTime +"' and '" + endTime + "'"); break; } }__EOF__
本文作者:soldier本文链接:https://www.cnblogs.com/soldier-cnblogs/p/15068912.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力! 分类: JAVA高级技术 好文要顶 关注我 收藏该文 soldier_cnblogs
粉丝 - 4 关注 - 0
+加关注 0 0 « 上一篇: SpringBoot+vue+elementUI+minio文件上传并点击下载
» 下一篇: java+mybatis 数据统计每天/月 并补全日期 posted @ 2021-07-28 09:33 soldier_cnblogs 阅读(1002) 评论(0) 编辑 收藏 举报 刷新评论刷新页面返回顶部 发表评论 编辑 预览 88ee990f-bb7c-489a-46fb-08d6d3fea897 自动补全
[Ctrl+Enter快捷键提交]
【推荐】阿里云金秋云创季,云服务器2核2G低至49.68元/年【推荐】腾讯自研业务上云,5000万核背后的技术难题破解之道
编辑推荐:
· 用最少的代码模拟 gRPC 四种消息交换模式
· 图解 ReentrantLock 底层公平锁和非公平锁实现原理
· 记一次 .NET 某工控图片上传 CPU 爆高分析
· 架构与思维:熔断限流的一些使用场景
· 定制 ASP.NET Core 的身份认证
阅读排行:
· 电视剧里的代码真能运行吗?
· 基于.NET 7 的 WebTransport 实现双向通信
· 用最少的代码模拟gRPC四种消息交换模式
· 你认识的C# foreach语法糖,真的是全部吗?
· .NET性能优化-使用内存+磁盘混合缓存
历史上的今天:
2020-07-28 CentOS7安装配置Nodejs
标签:queryWrapper,自定义,private,查询,ApiModelProperty,时间,Mybatis,Plus From: https://www.cnblogs.com/fanwenyan/p/16916358.html