1. DATE_FORMAT: 按照指定的格式输出日期。 示例:`SELECT DATE_FORMAT, '%Y%m%d %H:%i:%s'qwe2;`

2. STR_TO_DATE: 将字符串转换为日期。 示例:`SELECT STR_TO_DATE;`

3. DATE_ADD: 向日期添加指定的时间间隔。 示例:`SELECT DATE_ADD, INTERVAL 1 DAYqwe2;`

4. DATE_SUB: 从日期减去指定的时间间隔。 示例:`SELECT DATE_SUB, INTERVAL 1 DAYqwe2;`

5. CURDATE: 返回当前日期。 示例:`SELECT CURDATE;`

6. CURTIME: 返回当前时间。 示例:`SELECT CURTIME;`

7. NOW: 返回当前的日期和时间。 示例:`SELECT NOW;`

8. UTC_DATE: 返回当前的UTC日期。 示例:`SELECT UTC_DATE;`

9. UTC_TIME: 返回当前的UTC时间。 示例:`SELECT UTC_TIME;`

10. UTC_TIMESTAMP: 返回当前的UTC日期和时间。 示例:`SELECT UTC_TIMESTAMP;`

11. EXTRACT: 从日期中提取指定部分。 示例:`SELECT EXTRACTqwe2;`

12. DATE_DIFF: 返回两个日期之间的天数。 示例:`SELECT DATEDIFF, '20230101'qwe2;`

13. TIMESTAMPDIFF: 返回两个日期之间的指定时间单位数。 示例:`SELECT TIMESTAMPDIFFqwe2;`

14. TIMESTAMPADD: 向日期添加指定的时间间隔。 示例:`SELECT TIMESTAMPADDqwe2;`

15. TO_DAYS: 将日期转换为天数。 示例:`SELECT TO_DAYSqwe2;`

16. LAST_DAY: 返回日期所在月份的最后一天。 示例:`SELECT LAST_DAYqwe2;`

17. MAKEDATE: 创建一个日期。 示例:`SELECT MAKEDATE;`

18. MAKETIME: 创建一个时间。 示例:`SELECT MAKETIME;`

19. SEC_TO_TIME: 将秒转换为时间。 示例:`SELECT SEC_TO_TIME;`

20. TIME_TO_SEC: 将时间转换为秒。 示例:`SELECT TIME_TO_SEC;`

21. FROM_DAYS: 将天数转换为日期。 示例:`SELECT FROM_DAYS;`

22. WEEK: 返回日期是一年中的第几周。 示例:`SELECT WEEKqwe2;`

23. WEEKDAY: 返回日期是一周中的第几天(0表示周日,1表示周一)。 示例:`SELECT WEEKDAYqwe2;`

24. DAYOFWEEK: 返回日期是一周中的第几天(1表示周日,2表示周一)。 示例:`SELECT DAYOFWEEKqwe2;`

25. DAYOFMONTH: 返回日期是一月中的第几天。 示例:`SELECT DAYOFMONTHqwe2;`

26. DAYOFYEAR: 返回日期是一年中的第几天。 示例:`SELECT DAYOFYEARqwe2;`

27. MONTH: 返回日期的月份。 示例:`SELECT MONTHqwe2;`

28. MONTHNAME: 返回日期的月份名称。 示例:`SELECT MONTHNAMEqwe2;`

29. QUARTER: 返回日期是哪个季度。 示例:`SELECT QUARTERqwe2;`

30. YEAR: 返回日期的年份。 示例:`SELECT YEARqwe2;`

31. HOUR: 返回时间的小时数。 示例:`SELECT HOURqwe2;`

32. MINUTE: 返回时间的分钟数。 示例:`SELECT MINUTEqwe2;`

33. SECOND: 返回时间的秒数。 示例:`SELECT SECONDqwe2;`

34. PERIOD_ADD: 向周期添加指定的数字。 示例:`SELECT PERIOD_ADD;`

35. PERIOD_DIFF: 返回两个周期之间的差异。 示例:`SELECT PERIOD_DIFF;`

36. TIME_FORMAT: 按照指定的格式输出时间。 示例:`SELECT TIME_FORMAT, '%H:%i:%s'qwe2;`

37. TIMESTAMP: 将日期和时间组合为一个时间戳。 示例:`SELECT TIMESTAMP;`

38. UNIX_TIMESTAMP: 返回当前时间的Unix时间戳。 示例:`SELECT UNIX_TIMESTAMP;`

39. FROM_UNIXTIME: 将Unix时间戳转换为日期时间。 示例:`SELECT FROM_UNIXTIME;`

40. SYSDATE: 返回当前的系统日期和时间。 示例:`SELECT SYSDATE;`

41. GET_FORMAT: 返回日期时间的格式字符串。 示例:`SELECT GET_FORMAT;`

42. AT TIME ZONE: 将表达式转换为指定时区的日期时间。 示例:`SELECT NOW AT TIME ZONE 'America/New_York';`

43. CONVERT_TZ: 将表达式从一个时区转换为另一个时区。 示例:`SELECT CONVERT_TZ, 'America/New_York', 'Asia/Shanghai'qwe2;`

这些函数可以帮助你处理MySQL中的日期和时间数据,以满足各种不同的需求。

MySQL时间格式化概述

MySQL作为一款广泛使用的开源关系型数据库管理系统,提供了丰富的日期和时间处理功能。时间格式化是其中的一项重要功能,它允许用户将日期和时间数据按照特定的格式进行展示。本文将详细介绍MySQL中的时间格式化方法,帮助用户更好地处理日期和时间数据。

时间格式化函数

DATE_FORMAT

DATE_FORMAT函数可以将日期时间类型转换为字符串,并按照指定的格式进行展示。其语法如下:

DATE_FORMAT(date, format)

其中,date为日期时间类型的数据,format为格式化字符串,可以包含以下占位符:

%Y:四位数的年份

%y:两位数的年份

%m:月份(01-12)

%d:月份中的日(01-31)

%H:24小时制的小时(00-23)

%i:分钟(00-59)

%s:秒(00-59)

%p:AM或PM

STR_TO_DATE

STR_TO_DATE函数可以将字符串转换为日期时间类型,并按照指定的格式进行解析。其语法如下:

STR_TO_DATE(str, format)

其中,str为待转换的字符串,format为格式化字符串,与DATE_FORMAT函数的format参数相同。

FROM_DAYS

FROM_DAYS函数可以将天数转换为日期。其语法如下:

FROM_DAYS(days)

其中,days为天数,从1970年1月1日开始计算。

DATE_ADD

DATE_ADD函数可以在日期上加上指定的时间间隔。其语法如下:

DATE_ADD(date, INTERVAL expr unit)

其中,date为日期时间类型的数据,expr为时间间隔的值,unit为时间单位,如YEAR、MONTH、DAY、HOUR、MINUTE、SECOND等。

DATE_SUB

DATE_SUB函数可以在日期上减去指定的时间间隔。其语法如下:

DATE_SUB(date, INTERVAL expr unit)

其中,date为日期时间类型的数据,expr为时间间隔的值,unit为时间单位,如YEAR、MONTH、DAY、HOUR、MINUTE、SECOND等。

时间格式化示例

显示年月日

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d');

-- 输出:2023-04-01

显示月日年

SELECT DATE_FORMAT(NOW(), '%m/%d/%Y');

-- 输出:04/01/2023

显示完整日期和时间

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');

-- 输出:2023-04-01 14:30:00

显示小时和分钟

SELECT DATE_FORMAT(NOW(), '%H:%i');

-- 输出:14:30

显示星期几

SELECT DATE_FORMAT(NOW(), '%W');

-- 输出:Monday

显示月份的名称

SELECT DATE_FORMAT(NOW(), '%M');

-- 输出:April

显示月份的缩写

SELECT DATE_FORMAT(NOW(), '%b');

-- 输出:Apr

显示年份的最后两位数字

SELECT DATE_FORMAT(NOW(), '%y');

-- 输出:23

显示AM或PM

SELECT DATE_FORMAT(NOW(), '%p');

-- 输出:PM

显示秒

SELECT DATE_FORMAT(NOW(), '%s');

-- 输出:00