前言

上次我们工具类对传入的时间数据进行了切割,这次就是使用date_format()函数对数据库存储的事件类型数据进行切割,并查出符合条件的数据。

DATE_FORMAT()函数介绍

DATE_FORMAT()函数接受两个参数:

  • date:是要格式化的有效日期值/字段名
  • format:是由预定义的说明符组成的格式字符串,每个说明符前面都有一个百分比字符(%)
    例如:
SELECT
student_name,
DATE_FORMAT (created_time,'%Y')
FROM
student
WHERE deleted = 0
AND DATE_FORMAT (created_time,'%Y') = '2019'

即是将创建时间为2019年的数据查询出来,不管created_time这个字段存储的是不是年份,都会对时间进行切割,其中

  • %Y-%m-%d :代表年月日,如2022-02-02
  • %Y-%m:代表年月,如2022-02
  • %Y:代表年,如2022

mybatis-plus使用DATE_FORMAT()函数

在我们使用mybatis-plus进行查询条件的拼接时也可以用到 DATE_FORMAT()函数,例如:

QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("DATE_FORMAT (created_time,'%Y')",createTime)

以此类推

QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.in("DATE_FORMAT (created_time,'%Y')",createdTimeList)
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐