文章目录

概要

最近项目有需求,需要查询指定时间点的数据,而数据库中确实存储了datetime数据类型,但通过普通的大于小于等查询方式,无法查询到指定的时间数据,后来各种查询发现处理时间类型确实有些棘手。

技术细节

最终通过SQL原型查询予以解决:

 String dateStr = "2026-02-24 00:00:00";
 KLine kLine = service.getOne(Wrappers.<KLine>lambdaQuery()
               .apply("DATE_FORMAT(time_select, '%Y-%m-%d %H:%i:%s') = {0}", dateStr)
               .eq(KLine::getCycle,"H24")
               .eq(KLine::getCommodityid, commodityId)
               .last("limit 1"));

小结

apply() = 在 MyBatis-Plus 中 插入原生 SQL 条件的高级接口。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐