sql >> Databáze >  >> RDS >> Mysql

TIME_FORMAT() Příklady – MySQL

V MySQL můžete použít TIME_FORMAT() funkce pro formátování časové hodnoty.

Tato funkce funguje stejně jako DATE_FORMAT() s tím rozdílem, že hodnotu lze formátovat pouze v hodinách, minutách, sekundách a mikrosekundách.

Seznam specifikátorů formátu, které lze s touto funkcí použít, naleznete v tabulce ve spodní části tohoto článku.

Syntaxe

Syntaxe vypadá takto:

TIME_FORMAT(time,format)

Kde time je časová hodnota, kterou chcete formátovat, a format je formátovací řetězec (určuje, jak je hodnota času skutečně formátována).

Příklad 1 – Základní použití

Zde je příklad k demonstraci.

SELECT TIME_FORMAT('14:35:27', '%r') AS 'Result';

Výsledek:

+-------------+
| Result      |
+-------------+
| 02:35:27 PM |
+-------------+

Tento příklad používá %r specifikátor formátu, který formátuje čas jako 12hodinový (hh:mm:ss následovaný AM nebo PM).

Příklad 2 – Specifičtější formátování

Pokud použití obecnějšího specifikátoru formátu jako v předchozím příkladu není vhodné, existují různé další specifikátory formátu, které vám mohou pomoci vytvořit požadovaný formát.

Pokud se vám například líbí předchozí formát, ale nechcete, aby se vracely sekundy, můžete to udělat takto:

SELECT TIME_FORMAT('14:35:27', '%h:%i %p') AS 'Result';

Výsledek:

+----------+
| Result   |
+----------+
| 02:35 PM |
+----------+

Příklad 3 – 24 hodin

Existují také specifikátory formátu pro 24hodinový čas. Zde je nejjednodušší způsob, jak formátovat čas pomocí 24hodinového času.

SELECT TIME_FORMAT('14:35:27', '%T') AS 'Result';

Výsledek:

+----------+
| Result   |
+----------+
| 14:35:27 |
+----------+

Příklad 4 – Mikrosekundy

Zde je příklad, který ve výsledku zahrnuje část ve zlomcích sekund:

SELECT TIME_FORMAT('14:35:27', '%H:%i:%s.%f') AS 'Result';

Výsledek:

+-----------------+
| Result          |
+-----------------+
| 14:35:27.000000 |
+-----------------+

Samozřejmě můžeme do počáteční hodnoty času zahrnout i mikrosekundy:

SELECT TIME_FORMAT('14:35:27.123456', '%H:%i:%s.%f') AS 'Result';

Výsledek:

+-----------------+
| Result          |
+-----------------+
| 14:35:27.123456 |
+-----------------+

Příklad 5 – Uplynulý čas

Typ časového údaje není omezen na 24 hodinový čas. Může být také použit k zobrazení uplynulého času. Při používání této funkce pro uplynulý čas byste si měli být vědomi toho, jak specifikátory formátu hodin pracují s hodnotami času mimo rozsah 0 až 23.

Dokumentace MySQL uvádí následující:

Pokud hodnota času obsahuje část hodiny, která je větší než 23 , %H a %k Specifikátory formátu hodin vytvářejí hodnotu větší, než je obvyklý rozsah 0..23 . Ostatní specifikátory formátu hodin vytvářejí hodinovou hodnotu modulo 12 .

Zde je příklad k demonstraci:

SELECT 
    TIME_FORMAT('24:00:00', '%H %k %h %I %l') AS '24',
    TIME_FORMAT('48:00:00', '%H %k %h %I %l') AS '48',
    TIME_FORMAT('100:00:00', '%H %k %h %I %l') AS '100',
    TIME_FORMAT('500:00:00', '%H %k %h %I %l') AS '500';

Výsledek:

+----------------+----------------+-----------------+-----------------+
| 24             | 48             | 100             | 500             |
+----------------+----------------+-----------------+-----------------+
| 24 24 12 12 12 | 48 48 12 12 12 | 100 100 04 04 4 | 500 500 08 08 8 |
+----------------+----------------+-----------------+-----------------+

Specifikátory formátu

Následující specifikátory lze použít k určení návratového formátu. Jedná se o podmnožinu dostupných s DATE_FORMAT() funkce. Hodnota formátu musí začínat znakem procenta (% ).

Specifikátor Popis
%f Mikrosekundy (000000 ..999999 )
%H Hodina (00 ..23 )
%h Hodina (01 ..12 )
%I Hodina (01 ..12 )
%i Minuty, číselné (00 ..59 )
%k Hodina (0 ..23 )
%l Hodina (1 ..12 )
%p AM nebo PM
%r Čas, 12 hodin (hh:mm:ss následuje AM nebo PM )
%S Sekundy (00 ..59 )
%s Sekundy (00 ..59 )
%T Čas, 24 hodin (hh:mm:ss )
%% Doslovné % postava


  1. Parser pro Oracle SQL

  2. Jak spustit a nakonfigurovat ProxySQL 2.0 pro MySQL Galera Cluster na Dockeru

  3. SQL Server 2016:Vylepšení OLTP v paměti

  4. Co je MySQL? – Úvod do systémů správy databází