MySQL获取日期

MySQL获取日期

MySQL获取日期

在开发和管理数据库应用程序时,经常需要使用到日期和时间相关的操作。MySQL作为一种流行的关系型数据库管理系统,提供了丰富的日期和时间函数,用于获取、处理和计算日期。本文将详细介绍在MySQL中获取日期的方法和常用的日期函数。

1. 获取当前日期和时间

在MySQL中,可以使用CURDATE()函数获取当前日期,使用CURTIME()函数获取当前时间。以下是获取当前日期和时间的示例代码和运行结果:

SELECT CURDATE(); -- 获取当前日期
SELECT CURTIME(); -- 获取当前时间

运行结果:

+------------+
| CURDATE()  |
+------------+
| 2022-01-01 |
+------------+

+-----------+
| CURTIME() |
+-----------+
| 14:01:23  |
+-----------+

CURDATE()函数返回的日期格式为YYYY-MM-DDCURTIME()函数返回的时间格式为HH:MM:SS

2. 获取指定日期和时间

除了获取当前日期和时间,还可以通过一些函数获取指定的日期和时间。常用的函数包括:DATE()TIME()DATETIME()。以下是获取指定日期和时间的示例代码和运行结果:

SELECT DATE('2022-01-01');       -- 获取指定日期的日期部分
SELECT TIME('14:30:00');         -- 获取指定时间的时间部分
SELECT DATETIME('2022-01-01 14:30:00'); -- 获取指定日期和时间

运行结果:

+---------------------+
| DATE('2022-01-01')  |
+---------------------+
| 2022-01-01          |
+---------------------+

+------------------+
| TIME('14:30:00') |
+------------------+
| 14:30:00         |
+------------------+

+----------------------------------+
| DATETIME('2022-01-01 14:30:00') |
+----------------------------------+
| 2022-01-01 14:30:00              |
+----------------------------------+

DATE()函数将指定的日期字符串转换为日期类型,只保留日期部分;TIME()函数将指定的时间字符串转换为时间类型,只保留时间部分;DATETIME()函数将指定的日期和时间字符串转换为日期时间类型。

3. 格式化日期和时间

通过MySQL提供的日期格式化函数,可以将日期和时间格式化为指定的格式。常用的日期格式化函数包括:DATE_FORMAT()TIME_FORMAT()DATE_ADD()。以下是格式化日期和时间的示例代码和运行结果:

SELECT DATE_FORMAT('2022-01-01', '%Y年%m月%d日');   -- 格式化日期
SELECT TIME_FORMAT('14:30:00', '%H时%i分%s秒');     -- 格式化时间
SELECT DATE_FORMAT('2022-01-01 14:30:00', '%Y年%m月%d日 %H时%i分%s秒');     -- 格式化日期和时间
SELECT DATE_ADD('2022-01-01', INTERVAL 1 DAY);     -- 日期加减运算

运行结果:

+--------------------------------+
| DATE_FORMAT('2022-01-01', '%Y年%m月%d日') |
+--------------------------------+
| 2022年01月01日                              |
+--------------------------------+

+-------------------------------+
| TIME_FORMAT('14:30:00', '%H时%i分%s秒') |
+-------------------------------+
| 14时30分00秒                              |
+-------------------------------+

+-----------------------------------------------------+
| DATE_FORMAT('2022-01-01 14:30:00', '%Y年%m月%d日 %H时%i分%s秒') |
+-----------------------------------------------------+
| 2022年01月01日 14时30分00秒                                  |
+-----------------------------------------------------+

+----------------------------+
| DATE_ADD('2022-01-01', INTERVAL 1 DAY) |
+----------------------------+
| 2022-01-02                 |
+----------------------------+

DATE_FORMAT()函数将日期和时间按照指定的格式进行格式化输出,其中格式控制符%Y表示年份、%m表示月份、%d表示日期、%H表示小时、%i表示分钟、%s表示秒钟;TIME_FORMAT()函数将时间按照指定的格式进行格式化输出,其中格式控制符与日期格式相似;DATE_ADD()函数可以对日期进行加减运算,可以指定天数、小时数、分钟数等进行偏移。

4. 获取日期和时间的部分

有时候只需要获取日期或时间的部分,可以使用YEAR()MONTH()DAY()HOUR()MINUTE()SECOND()等函数。以下是获取日期和时间的部分的示例代码和运行结果:

SELECT YEAR('2022-01-01');     -- 获取年份
SELECT MONTH('2022-01-01');    -- 获取月份
SELECT DAY('2022-01-01');      -- 获取日期
SELECT HOUR('14:30:00');       -- 获取小时
SELECT MINUTE('14:30:00');     -- 获取分钟
SELECT SECOND('14:30:00');     -- 获取秒钟

运行结果:

+-----------------+
| YEAR('2022-01-01') |
+-----------------+
|              2022 |
+-----------------+

+------------------+
| MONTH('2022-01-01') |
+------------------+
|                 1 |
+------------------+

+----------------+
| DAY('2022-01-01') |
+----------------+
|              1 |
+----------------+

+------------------+
| HOUR('14:30:00') |
+------------------+
|               14 |
+------------------+

+--------------------+
| MINUTE('14:30:00') |
+--------------------+
|                 30 |
+--------------------+

+--------------------+
| SECOND('14:30:00') |
+--------------------+
|                 00 |
+--------------------+

5. 获取当前日期和时间的部分

通过上述的函数,可以获取给定日期和时间的部分。如果只需要获取当前日期或时间的部分,可以使用YEAR(CURDATE())MONTH(CURDATE())DAY(CURDATE())HOUR(CURTIME())MINUTE(CURTIME())SECOND(CURTIME())等函数。以下是获取当前日期和时间的部分的示例代码和运行结果:

SELECT YEAR(CURDATE());   -- 获取当前年份
SELECT MONTH(CURDATE());  -- 获取当前月份
SELECT DAY(CURDATE());    -- 获取当前日期
SELECT HOUR(CURTIME());   -- 获取当前小时
SELECT MINUTE(CURTIME()); -- 获取当前分钟
SELECT SECOND(CURTIME()); -- 获取当前秒钟

运行结果:

+----------------+
| YEAR(CURDATE()) |
+----------------+
|           2022 |
+----------------+

+-----------------+
| MONTH(CURDATE()) |
+-----------------+
|               1 |
+-----------------+

+---------------+
| DAY(CURDATE()) |
+---------------+
|             1 |
+---------------+

+----------------+
| HOUR(CURTIME()) |
+----------------+
|             14 |
+----------------+

+------------------+
| MINUTE(CURTIME()) |
+------------------+
|               30 |
+------------------+

+------------------+
| SECOND(CURTIME()) |
+------------------+
|               00 |
+------------------+

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程