Mysql数据库中有关时间函数的使用说明

使用mysql的时间函数,有利于我们在进行查询等操作时,把以往时间条件需要手动输入的情况转为sql语句进行自动获取填充。例如每天需要对数据库进行数据同步,如果没有时间函数的使用的话,就意味着我们需要手动输入时间的查询条件来进行操作,而引入时间操作后,我们只需要另外在配置一个数据库的定时任务,就可以对数据同步进行自动化操作了。

下面列出了一些在工作中常用到的时间函数:

1.获取当前时刻时间

SQL语句 返回示例 SQL说明
select now(); 2021-02-07 15:08:44 返回当前日期和时间
select curdate(); 2021-02-07 返回当前日期
select date(now()); 2021-02-07 返回当前日期
select year(now()); 2021 返回当前年份
select month(now()); 02 返回当前月份
select day(now()); 7 返回当前日期(天)
select curtime(); 15:08:44 返回当前时间
select hour(now()); 15 返回当前小时
select minute(now()); 08 返回当前分钟
select second(now()); 44 返回当前秒数
select weekofyear(now()); 5 返回当前日期为一年中的第几周
select dayofweek(now()); 1 返回当前日期为一周中的星期几(注意:该函数中一周是从周日开始的)

2、日期时间格式转换

select date_format(datetime,format);
主题 格式 描述
%Y 4位数的年
%b 月份对应的英文缩写
%M 月份对应的英文全称
%m 01-12的月
%c 1-12的月份数值
%d 01-31的某月里面的第几天
%e 1-31的某月里面的第几天
%D 用th后缀表示某月中的第几天
%j 001-366的一年中的第几天
%a 星期几对应的英文缩写
%W 星期几对应的英文全称
%H 00-23的小时
%h 01-12的小时
%i 00-59的分钟
%S 秒(00-59)
%f 微秒
时分秒 %T 返回当前的时分秒, 24-小时 (hh:mm:ss)

3、日期运算函数

#日期时间向后偏移函数
select date_add(date,interval num unit);
#日期时间向前偏移函数
select date_sub(date,interval num unit);
#date表示当前的日期,或者当前的日期时间;interval是一个固定的参数;num为上面讲到的x;unit表示你要加的单位,是往后移动7天,还是7月,还是7年。

#日期做差运算函数
select datediff(end_date,start_date)
unit参数单位 说明
year
month
day
hour 小时
minute 分钟
second
week 周数,全年第几周

4、工作中时间函数运用场景举例

#获取今天0点的日期时间
select date_format(curdate(),'%Y-%m-%d %H:%i:%s');
#获取昨天最后一秒23:59:59的日期时间
select date_sub(curdate(),interval 1 second);

 

本文系作者 @ 原创发布在 维简网。未经许可,禁止转载。

喜欢()
评论 (0)

请登录以参与评论。

现在登录…
热门搜索
10 文章
0 评论
4 喜欢
Top