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

Příklady CONVERT_TZ() – MySQL

V MySQL můžete převést hodnotu data a času mezi jedním časovým pásmem do druhého pomocí CONVERT_TZ() funkce. Tato funkce přijímá 3 argumenty; hodnotu datetime, původní časové pásmo a časové pásmo, do kterého se má převést.

Syntaxe a příklady níže.

Syntaxe

Zde je syntaxe:

CONVERT_TZ(dt,from_tz,to_tz)

Kde dt je datum/čas, from_tz je původní časové pásmo a to_tz je časové pásmo, do kterého se má převést.

Příklad

Zde je příklad použití.

SELECT CONVERT_TZ('2020-12-01 01:00:00','+00:00','+08:00') AS Result;

Výsledek:

+---------------------+
| Result              |
+---------------------+
| 2020-12-01 09:00:00 |
+---------------------+

Pojmenovaná časová pásma

Můžete také použít pojmenovaná časová pásma, například 'US/Eastern' , 'Europe/Moscow' , 'MET' , atd.

Chcete-li to provést, musíte nejprve nastavit tabulky časových pásem. Instalační procedura MySQL vytvoří tabulky časových pásem, ale nenačte je. Proto budete muset nejprve naplnit tyto tabulky.

Pokud se s touto funkcí pokusíte použít pojmenované časové pásmo, aniž byste nejprve vyplnili tabulky časových pásem, získáte hodnotu null.

SELECT CONVERT_TZ('2020-12-01 01:00:00','Europe/Helsinki','US/Eastern') AS Result;

Výsledek:

+--------+
| Result |
+--------+
| NULL   |
+--------+

Všimněte si, že i když naplníte tabulky časových pásem, možná je budete muset pravidelně aktualizovat. Informace se totiž mohou občas změnit. Další informace o tomto najdete v části Podpora časového pásma serveru MySQL na webu dokumentace MySQL.


  1. Jak klasifikovat, najít a maskovat PII v databázích…

  2. Jak provedu hromadné vložení do mySQL pomocí node.js

  3. PostgreSQL Planeta v Ansible Galaxy

  4. Jak zabránit útokům SQL Injection pomocí Secure