MySQL日期格式化

MySQL日期格式化

MySQL日期格式化

1. 引言

在数据库中,日期是一种常见的数据类型。MySQL提供了丰富的日期函数和格式化选项,方便我们对日期进行格式化和处理。本文将详细介绍MySQL中日期的格式化方法。

2. 日期函数

MySQL提供了许多用于处理日期的函数,这些函数可以用于提取、格式化和计算日期。下面是一些常用的日期函数:

2.1 NOW()

NOW()函数用于获取当前日期和时间。它返回一个表示当前日期和时间的日期时间值。

SELECT NOW();

输出:

2022-07-28 09:52:06

2.2 CURDATE()

CURDATE()函数用于获取当前日期。它返回一个表示当前日期的日期值。

SELECT CURDATE();

输出:

2022-07-28

2.3 CURTIME()

CURTIME()函数用于获取当前时间。它返回一个表示当前时间的时间值。

SELECT CURTIME();

输出:

09:52:06

2.4 DATE()

DATE()函数用于从一个日期时间值中提取日期部分。它返回一个表示日期的日期值。

SELECT DATE('2022-07-28 09:52:06');

输出:

2022-07-28

2.5 TIME()

TIME()函数用于从一个日期时间值中提取时间部分。它返回一个表示时间的时间值。

SELECT TIME('2022-07-28 09:52:06');

输出:

09:52:06

2.6 DAY()

DAY()函数用于从一个日期值中提取日份。它返回一个表示日份的整数值。

SELECT DAY('2022-07-28');

输出:

28

2.7 MONTH()

MONTH()函数用于从一个日期值中提取月份。它返回一个表示月份的整数值。

SELECT MONTH('2022-07-28');

输出:

7

2.8 YEAR()

YEAR()函数用于从一个日期值中提取年份。它返回一个表示年份的整数值。

SELECT YEAR('2022-07-28');

输出:

2022

3. 日期格式化

MySQL允许我们对日期进行格式化,可以将日期以我们期望的形式进行输出。下面是一些常用的日期格式化选项:

3.1 DATE_FORMAT()

DATE_FORMAT()函数用于将日期格式化为指定的字符串格式。它接受两个参数,第一个参数为日期值,第二个参数为目标字符串格式。

以下是一些常用的日期格式化符号:

  • %Y:4位年份
  • %m:两位月份
  • %d:两位日份
  • %H:24小时制小时数
  • %i:分钟数
  • %s:秒数
SELECT DATE_FORMAT('2022-07-28', '%Y年%m月%d日');

输出:

2022年07月28日
SELECT DATE_FORMAT('2022-07-28 09:52:06', '%Y-%m-%d %H:%i:%s');

输出:

2022-07-28 09:52:06

3.2 DATE_ADD()

DATE_ADD()函数用于对日期进行加法运算。它接受三个参数,第一个参数为日期值,第二个参数为要添加的时间间隔,第三个参数为要添加的时间单位。

以下是一些常用的时间单位:

  • YEAR:年
  • MONTH:月
  • DAY:天
  • HOUR:小时
  • MINUTE:分钟
  • SECOND:秒
SELECT DATE_ADD('2022-07-28', INTERVAL 1 DAY);

输出:

2022-07-29
SELECT DATE_ADD('2022-07-28', INTERVAL 1 MONTH);

输出:

2022-08-28

3.3 DATE_SUB()

DATE_SUB()函数用于对日期进行减法运算。它接受三个参数,第一个参数为日期值,第二个参数为要减去的时间间隔,第三个参数为要减去的时间单位。

SELECT DATE_SUB('2022-07-28', INTERVAL 1 DAY);

输出:

2022-07-27
SELECT DATE_SUB('2022-07-28', INTERVAL 1 MONTH);

输出:

2022-06-28

4. 示例代码

下面是一些示例代码,演示了如何在MySQL中进行日期格式化。

4.1 查询指定日期的月份和日份

SELECT DATE_FORMAT('2022-07-28', '%m月%d日');

输出:

07月28日

4.2 计算两个日期之间相差的天数

SELECT DATEDIFF('2022-07-28', '2022-07-25');

输出:

3

4.3 将日期按照指定格式进行排序

SELECT birthdate FROM students ORDER BY DATE_FORMAT(birthdate, '%Y-%m-%d') ASC;

4.4 计算某个日期加上30天之后的日期

SELECT DATE_ADD('2022-07-28', INTERVAL 30 DAY);

输出:

2022-08-27

4.5 查询某个月份的所有记录

SELECT * FROM orders WHERE MONTH(order_date) = 7;

4.6 查询某个年份的所有记录

SELECT * FROM orders WHERE YEAR(order_date) = 2022;

5. 结论

本文介绍了MySQL中日期的格式化方法,包括日期函数和日期格式化选项。通过使用这些函数和选项,我们可以方便地提取、格式化和计算日期。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程