MySQL 日期格式及日期函数

MySQL 日期格式及日期函数

MySQL 日期格式及日期函数

1. 介绍

MySQL是一种常用的关系型数据库管理系统,广泛应用于各种系统和应用程序中。日期是数据库中常用的数据类型之一,MySQL提供了一系列的日期函数和日期格式,用于处理和操作日期数据。

本文将详细介绍MySQL中日期的存储格式以及常用的日期函数,帮助读者正确地处理日期数据,并实现各种日期相关的功能。

2. 日期存储格式

在MySQL中,日期可以以多种格式存储,常用的有以下几种:

  • DATE: 日期,格式为’YYYY-MM-DD’,例如’2022-01-01’;
  • TIME: 时间,格式为’HH:MM:SS’,例如’12:30:00’;
  • DATETIME: 日期时间,格式为’YYYY-MM-DD HH:MM:SS’,例如’2022-01-01 12:30:00’;
  • TIMESTAMP: 时间戳,存储为自1970年1月1日以来的秒数。可以在创建表时设置默认值为CURRENT_TIMESTAMP,表示当前时间。

3. 日期函数

MySQL提供了丰富的日期函数,可以用于处理和操作日期数据。下面我们将介绍一些常用的日期函数及其用法。

3.1 DATE_FORMAT()

DATE_FORMAT()函数用于将日期按照指定格式进行格式化。它的语法如下:

DATE_FORMAT(date, format)

其中,date为要格式化的日期,format为指定的日期格式。下表列举了一些常用的日期格式及其对应的含义:

格式符 含义
%Y 四位年份
%y 两位年份
%m 月份
%d 日期
%H 小时(24小时制)
%i 分钟
%s

例如,我们可以使用DATE_FORMAT()函数将日期格式化为’YYYY年MM月DD日’的形式:

SELECT DATE_FORMAT('2022-01-01', '%Y年%m月%d日');

运行结果为:

2022年01月01日

3.2 CURDATE() 和 NOW()

CURDATE()函数用于获取当前日期,它的语法如下:

CURDATE()

NOW()函数用于获取当前日期时间,它的语法如下:

NOW()

例如,我们可以使用CURDATE()函数获取当前日期,并使用DATE_FORMAT()函数将其格式化为’YYYY-MM-DD’的形式:

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

运行结果为:

2022-01-01

3.3 DATE_ADD() 和 DATE_SUB()

DATE_ADD()函数用于在给定日期上添加或减去一定的时间间隔。它的语法如下:

DATE_ADD(date, INTERVAL expr unit)

其中,date为要操作的日期,expr为要添加或减去的时间间隔,unit为时间单位。时间单位可以是YEAR(年)、MONTH(月)、DAY(天)、HOUR(小时)、MINUTE(分钟)、SECOND(秒)等。

例如,我们可以使用DATE_ADD()函数在当前日期上添加一个月:

SELECT DATE_ADD(CURDATE(), INTERVAL 1 MONTH);

运行结果为:

2022-02-01

DATE_SUB()函数与DATE_ADD()函数类似,用法相同,只是它是减去一定的时间间隔。

3.4 DATEDIFF()

DATEDIFF()函数用于计算两个日期之间的天数差。它的语法如下:

DATEDIFF(end_date, start_date)

其中,end_date为结束日期,start_date为开始日期。

例如,我们可以使用DATEDIFF()函数计算两个日期之间的天数差:

SELECT DATEDIFF('2022-01-05', '2022-01-01');

运行结果为:

4

3.5 DATE() 和 TIME()

DATE()函数用于从日期时间中提取日期部分。它的语法如下:

DATE(datetime)

TIME()函数用于从日期时间中提取时间部分。它的语法如下:

TIME(datetime)

例如,我们可以使用DATE()函数提取日期时间的日期部分:

SELECT DATE('2022-01-01 12:30:00');

运行结果为:

2022-01-01

3.6 DAY() 和 MONTH() 和 YEAR()

DAY()函数用于从日期中提取天数。它的语法如下:

DAY(date)

MONTH()函数用于从日期中提取月份。它的语法如下:

MONTH(date)

YEAR()函数用于从日期中提取年份。它的语法如下:

YEAR(date)

例如,我们可以使用YEAR()函数提取日期的年份:

SELECT YEAR('2022-01-01');

运行结果为:

2022

4. 总结

本文详细介绍了MySQL中日期的存储格式以及常用的日期函数。通过合理运用这些日期函数,我们可以对日期数据进行格式化、计算以及提取各种日期部分。这些功能在实际应用中非常常见,例如统计日期范围内的数据、计算日期之间的间隔等操作。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程