Resumo : neste tutorial, você aprenderá como usar a FROM_UNIXTIME()
função MySQL para converter um UNIX
carimbo de data/hora em um formato legível de data e hora.
Introdução à função MySQL FROM_UNIXTIME()
Um carimbo de data/hora Unix apresenta o número de segundos que se passaram desde '1970-01-01 00:00:00'
o UTC.
Para converter um carimbo de data/hora Unix em um formato legível de data e hora, você usa a FROM_UNIXTIME()
função.
Aqui está a sintaxe da FROM_UNIXTIME()
função:
FROM_UNIXTIME(unix_timestamp, [format])
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Nesta sintaxe:
unix_timestamp
: Este é um carimbo de data/hora Unix que você deseja converter em um formato de data e hora.format
: este parâmetro opcional permite especificar um formato para a saída. Se você omitir, a função retornará o formato padrão de data e hora.
A FROM_UNIXTIME()
função retorna uma data e hora do carimbo de data/hora Unix usando o fuso horário da sessão.
Exemplos de funções MySQL FROM_UNIXTIME()
Vejamos alguns exemplos de uso da FROM_UNIXTIME()
função.
1) Exemplo básico de função FROM_UNIXTIME()
O exemplo a seguir usa a FROM_UNIXTIME()
função para converter o carimbo de data/hora Unix 1697684935
em um valor de data e hora:
SELECT FROM_UNIXTIME(1697684935);
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
+---------------------------+
| FROM_UNIXTIME(1697684935) |
+---------------------------+
| 2023-10-19 10:08:55 |
+---------------------------+
1 row in set (0.01 sec)
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
2) Usando a função FROM_UNIXTIME() com formato de data personalizado
O exemplo a seguir usa a FROM_UNIXTIME()
função com um formato de data personalizado "YYYY.MM.DD"
:
SELECT FROM_UNIXTIME(1697684935, '%Y.%m.%d');
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
+---------------------------------------+
| FROM_UNIXTIME(1697684935, '%Y.%m.%d') |
+---------------------------------------+
| 2023.10.19 |
+---------------------------------------+
1 row in set (0.00 sec)
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
3) Usando a função FROM_UNIXTIME() com dados da tabela
Primeiro, crie uma nova tabela que armazene os dados do evento com carimbo de data/hora Unix:
CREATE TABLE events(
id INT AUTO_INCREMENT PRIMARY KEY,
event_name VARCHAR(50) NOT NULL,
event_time INT NOT NULL
);
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Segundo, insira algumas linhas na events
tabela:
INSERT INTO events(event_name, event_time )
VALUES
('MySQL Enterprise Workshop', 1634630400),
('MySQL HeatWave and Database Day', 1640966400),
('MySQL HeatWave Hands-on Lab', 1654060800);
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Terceiro, consulte os dados da events
tabela e formate os valores na event_time
coluna usando a FROM_UNIXTIME()
função:
SELECT
event_name,
FROM_UNIXTIME(event_time) AS event_time
FROM
events;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
+---------------------------------+---------------------+
| event_name | event_time |
+---------------------------------+---------------------+
| MySQL Enterprise Workshop | 2021-10-19 15:00:00 |
| MySQL HeatWave and Database Day | 2021-12-31 23:00:00 |
| MySQL HeatWave Hands-on Lab | 2022-06-01 12:20:00 |
+---------------------------------+---------------------+
3 rows in set (0.00 sec)
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Resumo
- Use a função MySQL para converter um carimbo de data/hora em um formato legível de data e hora.
FROM_
UNIX
TIME()UNIX