UNIX_TIMESTAMP() în MySQL

Transformă o dată în numărul de secunde trecute de la 1 ianuarie 1970 UTC (timestamp Unix).

Sintaxă
UNIX_TIMESTAMP([data])

Ce face UNIX_TIMESTAMP()

Fără argument, UNIX_TIMESTAMP() dă momentul curent ca număr de secunde. Cu o dată, o convertește, considerând că data este în fusul orar al sesiunii.

Timestamp-ul Unix este formatul folosit de PHP (time()), JavaScript (în milisecunde) și multe API-uri.

Parametri

Parametru Descriere
data Opțional. Data convertită; implicit momentul curent.

Ce returnează

Un număr întreg (sau zecimal, dacă data are fracțiuni de secundă).

Exemple

Exemplele de pe această pagină pornesc de la datele de mai jos. Rulează mai întâi acest cod, apoi exemplul.

CREATE TABLE comenzi (
  id INT PRIMARY KEY,
  client VARCHAR(30),
  plasata DATETIME,
  livrata DATETIME
);

INSERT INTO comenzi VALUES
  (101, 'Ana', '2026-09-28 09:15:00', '2026-10-01 14:20:00'),
  (102, 'Bogdan', '2026-10-05 18:40:00', '2026-10-06 10:05:00'),
  (103, 'Cristina', '2026-10-17 22:10:00', NULL),
  (104, 'Dan', '2026-12-30 11:00:00', '2027-01-04 16:30:00');

Exemplul 1: O dată fixă în secunde

SELECT UNIX_TIMESTAMP('2026-10-19 14:30:00') AS secunde;

Rezultat

+------------+
| secunde    |
+------------+
| 1792409400 |
+------------+

Exemplul 2: Durata dintre două momente, în minute

SELECT id, (UNIX_TIMESTAMP(livrata) - UNIX_TIMESTAMP(plasata)) DIV 60 AS minute
FROM comenzi
WHERE livrata IS NOT NULL
ORDER BY id;

Rezultat

+-----+--------+
| id  | minute |
+-----+--------+
| 101 |   4625 |
| 102 |    925 |
| 104 |   7530 |
+-----+--------+

Greșeli frecvente

  • Uiți că rezultatul depinde de fusul orar al sesiunii. Aceeași dată dă alt număr pe un server setat pe UTC. Pentru diferențe între date, TIMESTAMPDIFF() e mai clar.

Comenzi înrudite

  • FROM_UNIXTIME(): Transformă un timestamp Unix (secunde de la 1970) într-o dată, opțional formatată.
  • TIMESTAMPDIFF(): Diferența dintre două momente în unitatea aleasă: secunde, minute, ore, zile, luni, ani.
  • UTC_TIMESTAMP(): Data și ora curentă în UTC, indiferent de fusul orar al serverului.