mysql 时间函数简单分类

mysql 时间函数

something is inportant to declare before this introducation in below , the name of msyql function is incasesensitive

MySQL函数不区别大小写

下面所有函数关于日期时间的参数必须是MySQL的合法日期时间,否则函数会报错

now() & curdate() & curtime()
mysql> SELECT NOW(),CURDATE(),CURTIME();
+---------------------+------------+-----------+
| NOW()               | CURDATE()  | CURTIME() |
+---------------------+------------+-----------+
| 2018-09-05 14:53:24 | 2018-09-05 | 14:53:24  |
+---------------------+------------+-----------+

上面也可以写为: mysql> select current_date(),current_time(),now();

date() & time() & extract()

there is a table like below:

+----+---------------------+
| id | t                   |
+----+---------------------+
|  1 | 2018-09-05 15:00:16 |
+----+---------------------+

date()函数获取日期;time()函数获取时间

mysql> select date(t) as d, time(t) as t from test;
+------------+----------+
| d          | t        |
+------------+----------+
| 2018-09-05 | 15:00:16 |
+------------+----------+

EXTRACT(unit FROM date)

返回日期时间的具体一个单位

比如单独返回 ….. 具体请参考https://www.w3cschool.cn/mysql/func-extract.html

mysql> select extract(year from t) as year ,extract(minute from t) as minute from test;
+------+--------+
| year | minute |
+------+--------+
| 2018 |      0 |
+------+--------+
date_add() & date_sub()
DATE_ADD(date,INTERVAL expr type)
DATE_SUB(date,INTERVAL expr type)

对于 type 参数值,这里不仔细介绍,给出参考地址https://www.w3cschool.cn/mysql/func-date-add.html

there is a table like below:

+----+---------------------+
| id | t                   |
+----+---------------------+
|  1 | 2018-09-05 15:00:16 |
+----+---------------------+

date_add()在t基础上加上一段时间;date_sub()在t基础上减去一段时间

mysql> select date_add(t,interval 1 day) as 'add',t,date_sub(t,interval 1 day) as 'sub' from test;
+---------------------+---------------------+---------------------+
| add                 | t                   | sub                 |
+---------------------+---------------------+---------------------+
| 2018-09-06 15:00:16 | 2018-09-05 15:00:16 | 2018-09-04 15:00:16 |
+---------------------+---------------------+---------------------+
datediff() & timediff()
DATEDIFF(date1,date2)

计算两个日期点的差值 DiffDate=date1-date2,结果以day形式表示

mysql> SELECT DATEDIFF('2008-11-30','2008-11-29') AS DiffDate ;
+----------+
| DiffDate |
+----------+
|        1 |
+----------+

TIMEDIFF(time1,time2)

计算两个时间点的差值DiffTime=time1-time2,结果以hour:minute:second形式表示

mysql> SELECT TIMEDIFF('2008-11-29 7:12:23','2008-11-30 7:23:43') AS DiffTime;
+-----------+
| DiffTime  |
+-----------+
| -24:11:20 |
+-----------+
date_format()
 DATE_FORMAT(date,format)

以不同的格式显示日期/时间数据

关于format格式,请参考https://www.w3cschool.cn/mysql/func-date-format.html

你可能感兴趣的:(小工具,mysql,date,msyql,日期,MySQL函数)