Mysql使用Datetime类型字段查询(DATE_FORMAT函数使用)

在工数据库设计中,我们往往会在数据库表中耦合该条纪录的创建时间和更新时间字段,以方便查询或排查问题。

在Mysql5.7及以上版本,我们可以使用其特性自动插入或更新这两个字段,如下:

 createAt datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 updateAt datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间'

第一个一句很好理解,我们把默认值设置为CURRENT_TIMESTAMP,即当前时间戳,当我们添加记录时,mysql会自动帮我们把该字段的值设置为当前时间戳。

第二个语句表达的意思是,默认也为当前时间戳,但当我们更新该条纪录时,mysql会自动帮我们更新该字段为更新纪录时的时间戳。

那我们如何使用SQL语句根据这两个字段来查询数据呢,这时我们就需要使用mysql的DATE_FORMAT函数,示例SQL如下:

SELECT * FROM `表名` WHERE createAt BETWEEN DATE_FORMAT("2020-06-28 13:47:29",'%Y-%m-%d %H:%i:%s') AND DATE_FORMAT("2020-06-28 13:47:44",'%Y-%m-%d %H:%i:%s')

其中'%Y-%m-%d %H:%i:%s’ 表示需要格式化日期字符串的格式。

%Y-表示年

%m-表示月(1-12)

%d-表示日期(天)(1-31)

%H-表示小时(0-23)

%i-表示分钟(0-59)

%s-表示秒(0-59)

这样我们就可以根据这两个字段来查询数据了。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值