sql >> Base de Datos >  >> RDS >> Mysql

UNIX_TIMESTAMP() Ejemplos – MySQL

En MySQL, puede usar UNIX_TIMESTAMP() función para devolver una marca de tiempo de Unix. Una marca de tiempo de Unix es la cantidad de segundos que han transcurrido desde '1970-01-01 00:00:00' UTC.

Puede usar esta función para devolver una marca de tiempo de Unix basada en la fecha/hora actual u otra fecha/hora especificada.

Sintaxis

Puede utilizar cualquiera de los siguientes formularios:

UNIX_TIMESTAMP()
UNIX_TIMESTAMP(date)

La (opcional) date El argumento le permite especificar una fecha para la cual calcular la marca de tiempo de Unix. Si se proporciona, la función devuelve el valor del argumento en segundos desde '1970-01-01 00:00:00' UTC.

La date el argumento puede ser una fecha , fechahora o marca de tiempo cadena o un número en formato AAAAMMDD, AAAAMMDDHHMMSS, AAAAMMDD o AAAAMMDDHHMMSS.

El valor de retorno es un entero si no se da ningún argumento o el argumento no incluye una parte de segundos fraccionarios, o decimal si se da un argumento que incluye una parte de segundos fraccionarios.

Ejemplo 1:uso de la fecha/hora actual

Este ejemplo utiliza la fecha y la hora actuales para producir la marca de tiempo de Unix.

SELECT UNIX_TIMESTAMP();

Resultado:

+------------------+
| UNIX_TIMESTAMP() |
+------------------+
|       1530054626 |
+------------------+

Esos son los segundos que han pasado desde las 00:00:00 hora universal coordinada (UTC) del jueves 1 de enero de 1970 y la hora en que ejecuté esa consulta.

Ejemplo 2:especificar una fecha

En este ejemplo, proporciono una fecha a partir de la cual calcular la marca de tiempo de Unix.

SELECT UNIX_TIMESTAMP('1970-01-02') As Result;

Resultado:

+--------+
| Result |
+--------+
|  50400 |
+--------+

Ejemplo 3:especifique un valor de fecha y hora

En este ejemplo, proporciono un valor de fecha y hora.

SELECT UNIX_TIMESTAMP('2021-11-27 12:35:03') AS Result;

Resultado:

+------------+
| Result     |
+------------+
| 1637980503 |
+------------+

Ejemplo 4:fracciones de segundo

Como se mencionó, si proporciona una parte de segundos fraccionarios, el valor devuelto será un decimal valor (a diferencia de entero para los ejemplos anteriores).

He aquí un ejemplo.

SELECT UNIX_TIMESTAMP('2021-11-27 12:35:03.123456') AS Result;

Resultado:

+-------------------+
| Result            |
+-------------------+
| 1637980503.123456 |
+-------------------+