TIME_FORMAT() în MySQL

Formatează o oră sau o durată, cu codurile pentru ore, minute și secunde.

Sintaxă
TIME_FORMAT(ora, format)

Ce face TIME_FORMAT()

TIME_FORMAT() este ca DATE_FORMAT(), dar acceptă doar codurile de timp: %H, %h, %i, %s, %p (AM/PM) etc. Spre deosebire de DATE_FORMAT(), poate afișa și durate de peste 24 de ore.

Parametri

Parametru Descriere
ora Ora sau durata formatată.
format Șablonul.

Ce returnează

Textul formatat.

Exemple

Exemplul 1: Format de 12 ore și durate lungi

SELECT TIME_FORMAT('14:30:05', '%h:%i %p') AS format_12h,
       TIME_FORMAT('50:15:00', '%H ore și %i minute') AS durata;

Rezultat

+------------+----------------------+
| format_12h | durata               |
+------------+----------------------+
| 02:30 PM   | 50 ore și 15 minute  |
+------------+----------------------+

Greșeli frecvente

  • Folosești coduri de dată (%d, %Y) în TIME_FORMAT(). Ele dau NULL sau zero; pentru dată folosește DATE_FORMAT().

Comenzi înrudite

  • DATE_FORMAT(): Afișează o dată în formatul dorit, ex. 19.10.2026 sau „Luni 19 Octombrie 2026”.
  • SEC_TO_TIME() și TIME_TO_SEC(): Transformă un număr de secunde în durată HH:MM:SS și invers.
  • TIMEDIFF(): Diferența dintre două ore sau date-ore, ca durată HH:MM:SS.