O MySQL
FROM_UNIXTIME()
A função permite que você retorne uma representação de data de um carimbo de data/hora Unix. Mais especificamente, ele retorna o timestamp Unix como um valor em 'YYYY-MM-DD HH:MM:SS' ou AAAAMMDDHHMMSS formato, dependendo se a função é usada em uma string ou contexto numérico.
Sintaxe
Você pode usar um dos dois formulários a seguir:
FROM_UNIXTIME(unix_timestamp) FROM_UNIXTIME(unix_timestamp,format)
O
unix_timestamp
argumento é um valor de timestamp interno (por exemplo, isso pode ser produzido com o UNIX_TIMESTAMP()
função). O (opcional)
format
O argumento permite especificar como o resultado deve ser formatado. Consulte a tabela na parte inferior deste artigo para obter os formatos válidos. Exemplo 1 – Uso básico
Aqui está um exemplo para demonstrar o primeiro formulário de sintaxe.
SELECT FROM_UNIXTIME(946562400) AS Result;
Resultado:
+---------------------+ | Result | +---------------------+ | 1999-12-31 00:00:00 | +---------------------+
Exemplo 2 – Segundos fracionários
Neste exemplo, forneço um argumento que inclui segundos fracionários.
SELECT FROM_UNIXTIME(946609199.999999) AS Result;
Resultado:
+----------------------------+ | Result | +----------------------------+ | 1999-12-31 12:59:59.999999 | +----------------------------+
Exemplo 3 – Formatando o resultado
Neste exemplo, forneço um segundo argumento, que especifica como o resultado deve ser formatado.
SELECT FROM_UNIXTIME(946562400, '%W, %D %M %Y') AS Result;
Resultado:
+----------------------------+ | Result | +----------------------------+ | Friday, 31st December 1999 | +----------------------------+
E aqui está um que inclui a parte do tempo na formatação:
SELECT FROM_UNIXTIME(946609199, '%h:%i %p, %D %M %Y') AS Result;
Resultado:
+------------------------------+ | Result | +------------------------------+ | 12:59 PM, 31st December 1999 | +------------------------------+
Exemplo 4 – Contexto Numérico
Se
FROM_UNIXTIME()
é usado em um contexto numérico, a data resultante é fornecida em formato numérico. Aqui está um exemplo que compara resultados quando usado em um contexto de string versus numérico.
SELECT FROM_UNIXTIME(946562400) As 'String', FROM_UNIXTIME(946562400) + 0 As 'Numeric';
Resultado:
+---------------------+----------------+ | String | Numeric | +---------------------+----------------+ | 1999-12-31 00:00:00 | 19991231000000 | +---------------------+----------------+
Especificadores disponíveis
Os especificadores a seguir podem ser usados para especificar o formato de retorno. O valor do formato deve começar com um sinal de porcentagem (
%
). Especificador | Descrição |
---|---|
%a | Nome abreviado do dia da semana (Sun ..Sat ) |
%b | Nome do mês abreviado (Jan ..Dec ) |
%c | Mês, numérico (0 ..12 ) |
%D | Dia do mês com sufixo em inglês (0th , 1st , 2nd , 3rd , …) |
%d | Dia do mês, numérico (00 ..31 ) |
%e | Dia do mês, numérico (0 ..31 ) |
%f | Microssegundos (000000 ..999999 ) |
%H | Hora (00 ..23 ) |
%h | Hora (01 ..12 ) |
%I | Hora (01 ..12 ) |
%i | Minutos, numérico (00 ..59 ) |
%j | Dia do ano (001 ..366 ) |
%k | Hora (0 ..23 ) |
%l | Hora (1 ..12 ) |
%M | Nome do mês (January ..December ) |
%m | Mês, numérico (00 ..12 ) |
%p | AM ou PM |
%r | Hora, 12 horas (hh:mm:ss seguido por AM ou PM ) |
%S | Segundos (00 ..59 ) |
%s | Segundos (00 ..59 ) |
%T | Horário, 24 horas (hh:mm:ss ) |
%U | Semana (00 ..53 ), onde domingo é o primeiro dia da semana; WEEK() modo 0 |
%u | Semana (00 ..53 ), onde segunda-feira é o primeiro dia da semana; WEEK() modo 1 |
%V | Semana (01 ..53 ), onde domingo é o primeiro dia da semana; WEEK() modo 2; usado com %X |
%v | Semana (01 ..53 ), onde segunda-feira é o primeiro dia da semana; WEEK() modo 3; usado com %x |
%W | Nome do dia da semana (Sunday ..Saturday ) |
%w | Dia da semana (0 =Domingo..6 =Sábado) |
%X | Ano da semana em que domingo é o primeiro dia da semana, numérico, quatro dígitos; usado com %V |
%x | Ano para a semana, onde segunda-feira é o primeiro dia da semana, numérico, quatro dígitos; usado com %v |
%Y | Ano, numérico, quatro dígitos |
%y | Ano, numérico (dois dígitos) |
%% | Um literal % personagem |
% | x , para qualquer “x ” não listado acima |