MySQL中与日期和时间相关函数

1.NOW() , CURRENT_TIMESTAMP() , SYSDATE()

1)这三个函数的作用都是返回当前系统的时间,例如:
在这里插入图片描述
2)那他们之间的差别是什么呢?
我们先看下面的例子
在这里插入图片描述

我们可以看到,当运行sleep(2)让其mysql等待两秒后,sysdate()函数打印的是2秒后的时间,而now()和current_timestamp()打印的是2秒前的时间。
所以我们可以总结:
now()和current_timestamp()函数作用相同。
sysdate()函数返回的是实时系统时间,而now()返回的是执行sql时的开始时间。

2.时间加减函数:date_add(date,interval n day) date_sub(date,interval n day)

如下:
在这里插入图片描述
时间加减的问题常常离不开闰月问题:
1)如果是闰月,那么DATE_ADD函数将如何处理呢?
MySql中默认是这样处理的:如果目标年份是闰月,那么返回的日期为2月29日,如果不是闰月,那么返回的日期是2月28日,如下:
在这里插入图片描述
我们可以看到date_add()中第二个参数是可以变化的: 除了可以使用day,year,也可以使用:second,minute,hour,week,month,microsecond等。

3.DATE_FORMAT函数

这个函数的作用就是按照用户需求格式化打印出日期
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/c1776167012/article/details/120567945