MySQL 时间戳转为日期

2024年04月13日 MySQL 时间戳转为日期 极客笔记

MySQL 时间戳转为日期

在面对存储时间和日期信息的时候,我们常常会使用时间戳来表示一个时间点。时间戳是一个长整数,代表从1970年1月1日00:00:00 UTC到特定时间点的秒数。在MySQL中,我们经常会遇到需要将时间戳转换为易读的日期格式的情况。这篇文章将详细介绍在MySQL中如何将时间戳转为日期格式。

UNIX_TIMESTAMP函数

在MySQL中,UNIX_TIMESTAMP函数用于将特定日期转换为时间戳的格式。例如,我们可以使用如下查询语句将当前日期转为时间戳:

SELECT UNIX_TIMESTAMP(NOW());

运行以上查询语句后,会返回当前日期的时间戳,结果类似于1605075085。这个时间戳代表了当前时间点距离1970年1月1日00:00:00 UTC的秒数。

FROM_UNIXTIME函数

除了将日期转为时间戳,我们也经常需要将时间戳转为日期。在MySQL中,可以使用FROM_UNIXTIME函数来实现这一目的。例如,我们可以使用如下查询语句将时间戳转为日期:

SELECT FROM_UNIXTIME(1605075085);

运行以上查询语句后,会返回时间戳1605075085对应的日期格式,结果类似于2020-11-11 09:24:45。这样,我们就成功将时间戳转换为易读的日期格式了。

示例

接下来,让我们通过一个实际的示例来演示如何将时间戳转为日期。假设我们有一个存储时间戳的表timestamps,其中包含一个名为timestamp的字段,存储了时间戳信息。我们希望查询出该时间戳对应的日期。我们可以使用如下查询语句来实现:

首先,创建一个名为timestamps的表,并插入一些时间戳数据:

CREATE TABLE timestamps (
    id INT PRIMARY KEY,
    timestamp INT
);

INSERT INTO timestamps (id, timestamp) VALUES (1, 1605075085);
INSERT INTO timestamps (id, timestamp) VALUES (2, 1605143522);

接着,查询出时间戳对应的日期:

SELECT id, FROM_UNIXTIME(timestamp) AS date FROM timestamps;

运行以上查询语句后,会返回两条记录,分别表示id为1和2的时间戳对应的日期。结果类似于:

| id | date                |
|----|---------------------|
| 1  | 2020-11-11 09:24:45 |
| 2  | 2020-11-12 04:45:22 |

通过以上示例,我们成功地将时间戳转换为易读的日期格式,并实现了将时间戳转为日期的功能。

总结

本文详细介绍了在MySQL中如何将时间戳转为日期格式。通过使用UNIX_TIMESTAMP和FROM_UNIXTIME函数,我们可以方便地在数据库中进行时间戳和日期格式之间的转换。

本文链接:http://so.lmcjl.com/news/1963/

展开阅读全文