MySQL 是一种流行的关系型数据库管理系统,它提供了丰富的日期和时间函数,可以方便地获取和格式化日期和时间数据。在本篇文章中,我们将学习如何在 MySQL 中轻松获取并格式化当前时间。
获取当前时间
在 MySQL 中,你可以使用 NOW() 函数来获取当前的日期和时间。这个函数返回一个 DATETIME 类型的值,包含了年、月、日、小时、分钟和秒。
SELECT NOW();
执行上述 SQL 语句,你会得到类似以下的结果:
+---------------------+
| NOW() |
+---------------------+
| 2023-04-01 12:34:56 |
+---------------------+
格式化当前时间
MySQL 提供了多种函数来格式化日期和时间。以下是一些常用的格式化函数:
1. DATE_FORMAT()
DATE_FORMAT() 函数可以将日期和时间格式化为指定的格式。它接受两个参数:第一个参数是日期和时间值,第二个参数是格式字符串。
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');
上面的 SQL 语句会将当前时间格式化为 YYYY-MM-DD HH:MM:SS 格式。执行结果如下:
+--------------------------------------+
| DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s')|
+--------------------------------------+
| 2023-04-01 12:34:56 |
+--------------------------------------+
2. STR_TO_DATE()
STR_TO_DATE() 函数可以将一个字符串转换为日期和时间值。这对于解析来自外部源(如用户输入)的日期和时间非常有用。
SELECT STR_TO_DATE('2023-04-01 12:34:56', '%Y-%m-%d %H:%i:%s');
执行上述 SQL 语句,你会得到以下结果:
+--------------------------------------------------+
| STR_TO_DATE('2023-04-01 12:34:56', '%Y-%m-%d %H:%i:%s')|
+--------------------------------------------------+
| 2023-04-01 12:34:56 |
+--------------------------------------------------+
3. TIMESTAMPDIFF()
TIMESTAMPDIFF() 函数可以计算两个日期之间的差异。它接受三个参数:第一个参数是要计算的日期类型(如 YEAR、MONTH、DAY 等),第二个参数是起始日期,第三个参数是结束日期。
SELECT TIMESTAMPDIFF(DAY, '2023-04-01', NOW());
上面的 SQL 语句会计算从 2023-04-01 到当前日期的天数差。执行结果如下:
+--------------------------------------------------+
| TIMESTAMPDIFF(DAY, '2023-04-01', NOW()) |
+--------------------------------------------------+
| 31 |
+--------------------------------------------------+
总结
在本篇文章中,我们学习了如何在 MySQL 中获取和格式化当前时间。使用 NOW() 函数可以轻松获取当前日期和时间,而 DATE_FORMAT()、STR_TO_DATE() 和 TIMESTAMPDIFF() 等函数可以帮助你根据需要格式化、解析和计算日期和时间数据。掌握这些函数将使你在处理日期和时间数据时更加得心应手。