Referencia de funciones

UNIX_TIMESTAMP

Equivalente en PostgreSQL:

Devuelve el tiempo Unix, es decir, el número de segundos desde 1970-01-01 00:00:00 UTC.

MySQL 8.4
UNIX_TIMESTAMP([date])
  • [ ]parte opcional
date
Fecha o fecha y hora; por defecto, el momento actual
DATETIMEOpcional

Valor devuelto

Número entero de segundos, con decimales si la fecha tiene fracciones de segundo; 0 para fechas fuera de rango, por ejemplo anteriores a 1970, y para una cadena que no se reconoce como fecha: UNIX_TIMESTAMP('abc') = 0

Ejemplos

Momento actual en segundos

MySQL 8.4
SELECT UNIX_TIMESTAMP();

Fechas de pago en segundos

MySQL 8.4
SELECT payment_id,
	date,
	UNIX_TIMESTAMP(date) AS unix_time
FROM Payments;
payment_iddateunix_time
12005-02-121108166400
22005-03-231111536000
32005-05-141116028800
42005-07-221121990400
52005-07-261122336000
62005-02-201108857600
72005-07-301122681600
82005-09-121126483200
92005-09-301128038400
102005-10-271130371200

Fecha anterior a 1970

MySQL 8.4
SELECT UNIX_TIMESTAMP('1969-12-31') AS unix_time;
unix_time
0

Detalles

Una fecha sin zona horaria se interpreta como hora de la zona horaria de la sesión (time_zone), así que el resultado depende de la configuración del servidor.

Véase también