Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > MySQL 获取年月日

MySQL 如果单独获取已知日期的年月日

作者:yyytucj

本文介绍在MySQL中如何使用内置函数提取日期和时间的各个部分,包括年、月、日、小时、分钟、秒以及星期几,通过示例和代码,展示了如何使用YEAR()、MONTH()、DAY()、HOUR()、MINUTE()、SECOND()和WEEKDAY()函数,并介绍了DATE_FORMAT()函数的灵活性,感兴趣的朋友一起看看吧

在MySQL中,处理日期和时间是一项常见任务。通常,我们需要从已知的日期中提取年、月、日等部分信息。MySQL 提供了一些内置函数,可以方便地进行这些操作。本文将详细介绍如何在MySQL中单独获取已知日期的年、月、日部分。

一、提取年份(Year)

要从日期中提取年份,可以使用 YEAR() 函数。这个函数接受一个日期参数,并返回该日期的年份部分。

示例

假设我们有一个名为 events 的表,包含一个名为 event_date 的日期列。我们可以通过以下查询提取 event_date 中的年份:

SELECT event_date, YEAR(event_date) AS year
FROM events;
​

输出结果

event_dateyear
2023-07-012023
2024-01-152024

二、提取月份(Month)

要从日期中提取月份,可以使用 MONTH() 函数。这个函数接受一个日期参数,并返回该日期的月份部分(1到12)。

示例

同样地,从 event_date 中提取月份:

SELECT event_date, MONTH(event_date) AS month
FROM events;

输出结果

event_datemonth
2023-07-017
2024-01-151

三、提取日期(Day)

要从日期中提取日期部分,可以使用 DAY() 函数。这个函数接受一个日期参数,并返回该日期的天数部分(1到31)。

示例

从 event_date 中提取日期部分:

SELECT event_date, DAY(event_date) AS day
FROM events;

输出结果

event_dateday
2023-07-011
2024-01-1515

四、综合示例

我们可以将上述函数结合起来,从日期中同时提取年、月、日信息。

示例

从 event_date 中提取年、月、日:

SELECT event_date, 
       YEAR(event_date) AS year,
       MONTH(event_date) AS month,
       DAY(event_date) AS day
FROM events;
​

输出结果

event_dateyearmonthday
2023-07-01202371
2024-01-152024115

五、其他日期和时间函数

提取小时、分钟、秒

除了年、月、日,MySQL 还提供了提取时间部分的函数,例如 HOUR()MINUTE() 和 SECOND()

示例

假设有一个名为 log_time 的时间戳列,我们可以分别提取小时、分钟和秒:

SELECT log_time, 
       HOUR(log_time) AS hour,
       MINUTE(log_time) AS minute,
       SECOND(log_time) AS second
FROM logs;
​

输出结果

log_timehourminutesecond
2023-07-01 12:34:56123456
2024-01-15 23:45:0123451

提取星期几(Weekday)

可以使用 WEEKDAY() 函数提取星期几,从0(星期一)到6(星期日)。

示例

从 event_date 中提取星期几:

SELECT event_date, WEEKDAY(event_date) AS weekday
FROM events;
​

输出结果

event_dateweekday
2023-07-015
2024-01-150

六、使用DATE_FORMAT函数

DATE_FORMAT() 函数允许根据指定的格式字符串来格式化日期。可以通过这种方式灵活地提取日期的各个部分。

示例

从 event_date 中提取年、月、日:

SELECT event_date, 
       DATE_FORMAT(event_date, '%Y') AS year,
       DATE_FORMAT(event_date, '%m') AS month,
       DATE_FORMAT(event_date, '%d') AS day
FROM events;
​

输出结果

event_dateyearmonthday
2023-07-0120230701
2024-01-1520240115

到此这篇关于MySQL 中单独获取已知日期的年月日的文章就介绍到这了,更多相关MySQL 获取年月日内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文