MySQL 时间戳转时间

MySQL 时间戳转时间

MySQL 时间戳转时间

什么是时间戳

时间戳是一种表示日期和时间的方式,它通常是一个数字,表示从某个特定时间(通常是1970年1月1日00:00:00)到现在所经过的秒数或毫秒数。时间戳的主要作用是在不同的系统和应用程序之间统一表示时间,方便进行日期和时间的计算。

MySQL 中,时间戳有两种类型:

  1. UNIX 时间戳(Timestamp)
  2. 自定义时间戳(Datetime)

UNIX 时间戳

UNIX 时间戳是指从 UNIX 纪元以来的秒数。UNIX 纪元是一个固定的时间点,通常被定义为1970年1月1日00:00:00。UNIX 时间戳以整数形式存储,并且可以表示的时间范围较广,可以支持到2038年。

MySQL 中,UNIX 时间戳可以使用 UNIX_TIMESTAMP() 函数获取当前时间的时间戳,或者通过直接插入整数形式的值来存储和操作时间戳。

获取当前时间戳

可以使用 UNIX_TIMESTAMP() 函数获取当前时间的时间戳。例如,执行以下 SQL 语句可以获取当前时间的时间戳:

SELECT UNIX_TIMESTAMP();

运行结果可能类似于:

+------------------+
| UNIX_TIMESTAMP() |
+------------------+
|       1641585152 |
+------------------+

将时间戳转换为日期和时间

MySQL 提供了将 UNIX 时间戳转换为日期和时间的函数 FROM_UNIXTIME()。这个函数接受一个 UNIX 时间戳作为参数,并返回一个格式化后的日期和时间字符串。

下面是一个示例,将时间戳 1641585152 转换为日期和时间:

SELECT FROM_UNIXTIME(1641585152);

运行结果可能类似于:

+------------------------+
| FROM_UNIXTIME(1641585152) |
+------------------------+
| 2022-01-07 15:25:52    |
+------------------------+

可以看到,时间戳 1641585152 被转换为了具体的日期和时间。

自定义时间戳

除了 UNIX 时间戳,MySQL 还支持一种自定义的时间戳类型,称为 Datetime。自定义时间戳存储了日期和时间的信息,并以标准的日期和时间格式进行存储。

存储自定义时间戳

要将日期和时间插入到表中的自定义时间戳列中,可以使用 STR_TO_DATE() 函数将字符串转换为日期和时间格式。

以下是一个示例,插入一个自定义时间戳到表 example_table 的列 timestamp_column 中:

INSERT INTO example_table (timestamp_column) VALUES (STR_TO_DATE('2022-01-07 15:25:52', '%Y-%m-%d %H:%i:%s'));

将自定义时间戳转换为日期和时间

要将自定义时间戳转换为日期和时间,可以使用 DATE_FORMAT() 函数将日期和时间格式化为指定的格式。

以下是一个示例,将自定义时间戳列 timestamp_column 的值转换为格式为年-月-日 时:分:秒的日期和时间字符串:

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

运行结果可能类似于:

+-------------------------------------+
| DATE_FORMAT(timestamp_column, '%Y-%m-%d %H:%i:%s') |
+-------------------------------------+
| 2022-01-07 15:25:52                 |
+-------------------------------------+

总结

本文介绍了 MySQL 中时间戳的概念和使用方法。UNIX 时间戳用于表示从 UNIX 纪元开始的秒数,可以通过 UNIX_TIMESTAMP() 函数获取当前时间戳,并使用 FROM_UNIXTIME() 函数将时间戳转换为日期和时间。自定义时间戳则用于存储日期和时间信息,并使用 STR_TO_DATE() 函数将字符串转换为时间格式,使用 DATE_FORMAT() 函数将自定义时间戳转换为指定格式的日期和时间字符串。

通过了解和使用这些时间戳函数,可以在 MySQL 中灵活处理日期和时间数据,方便进行各种计算和操作。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程