Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Exemplos UNIX_TIMESTAMP() – MySQL


No MySQL, você pode usar o UNIX_TIMESTAMP() função para retornar um timestamp Unix. Um carimbo de data/hora Unix é o número de segundos decorridos desde '1970-01-01 00:00:00' UTC.

Você pode usar esta função para retornar um carimbo de data/hora Unix com base na data/hora atual ou em outra data/hora especificada.


Sintaxe


Você pode usar qualquer um dos seguintes formulários:
UNIX_TIMESTAMP()
UNIX_TIMESTAMP(date)

date (opcional) O argumento permite especificar uma data para a qual calcular o timestamp Unix. Se fornecido, a função retornará o valor do argumento como segundos desde '1970-01-01 00:00:00' UTC.

A date argumento pode ser uma data , datahora , ou carimbo de data e hora string ou um número no formato YYMMDD, YYMMDDHHMMSS, YYYYMMDD ou YYYYMMDDHHMMSS.

O valor de retorno é um inteiro se nenhum argumento for fornecido ou o argumento não incluir uma parte de segundos fracionários, ou decimal se for fornecido um argumento que inclua uma parte de segundos fracionários.

Exemplo 1 – Usando a data/hora atual


Este exemplo usa a data e hora atuais para produzir o carimbo de data/hora do Unix.
SELECT UNIX_TIMESTAMP();

Resultado:
+------------------+
| UNIX_TIMESTAMP() |
+------------------+
|       1530054626 |
+------------------+

Então, isso é quantos segundos se passaram desde 00:00:00 Coordinated Universal Time (UTC), quinta-feira, 1º de janeiro de 1970, e a hora em que executei essa consulta.

Exemplo 2 – Especificar uma data


Neste exemplo, forneço uma data para calcular o carimbo de data/hora do Unix.
SELECT UNIX_TIMESTAMP('1970-01-02') As Result;

Resultado:
+--------+
| Result |
+--------+
|  50400 |
+--------+

Exemplo 3 – Especifique um valor de data e hora


Neste exemplo, forneço um valor de data e hora.
SELECT UNIX_TIMESTAMP('2021-11-27 12:35:03') AS Result;

Resultado:
+------------+
| Result     |
+------------+
| 1637980503 |
+------------+

Exemplo 4 – Segundos fracionários


Conforme mencionado, se você fornecer uma parte de segundos fracionários, o valor de retorno será um decimal valor (em oposição a inteiro para os exemplos anteriores).

Aqui está um exemplo.
SELECT UNIX_TIMESTAMP('2021-11-27 12:35:03.123456') AS Result;

Resultado:
+-------------------+
| Result            |
+-------------------+
| 1637980503.123456 |
+-------------------+