Понякога може да се наложи да промените часовата зона на UTC или да зададете часовата зона на UTC. В тази статия ще разгледаме как да конвертирате дата и час в UTC в MySQL.
Как да конвертирате дата и час в UTC в MySQL
Ето стъпките за преобразуване на дата и час в UTC в MySQL. Можете лесно да промените датата и часа на UTC, като използвате convert_tz функция.
Ето синтаксиса за convert_tz
convert_tz(date_value, original_timezone, new_timezone)
В горната функция можете да посочите стойност за дата като литерал низ, системна функция или име на колона, оригиналната часова зона, както и новата часова зона. Оригиналните и новите часови зони могат да бъдат посочени с помощта на отмествания или имена на часови зони.
Ето пример за преобразуване на стойността на датата и часа от местната часова зона (GMT+10:00) в UTC (+00:00). По подразбиране трябва да посочите оригинални (+10:00) и нови часови зони (+00:00) като отмествания спрямо UTC.
mysql> SELECT CONVERT_TZ('2018-06-15 12:00:00','+10:00','+00:00'); +-----------------------------------------------------+ | CONVERT_TZ('2018-06-15 12:00:00','+00:00','+10:00') | +-----------------------------------------------------+ | 2018-06-15 02:00:00 | +-----------------------------------------------------+
По същия начин можете също да конвертирате колони за дата, час, дата и час, като използвате convert_tz. Ето пример за промяна на часовата зона на order_date колона в продажби таблица, от UTC до EST
mysql> select convert_tz(order_date,'+10:00','+00:00') from sales; +------------------------------------------+ | convert_tz(order_date,'+10:00','+00:00') | +------------------------------------------+ | 2020-05-03 19:00:00 | | 2020-05-04 19:00:00 | | 2020-05-05 19:00:00 | | ... | | 2020-05-13 19:00:00 | +------------------------------------------+
Можете също да посочите часови зони вместо отмествания. В този случай обаче ще трябва да изтеглите и инсталирате MySQL часови зони на вашия сървър. Ето пример за преобразуване на EST в UTC часова зона чрез посочване на имена на часови зони вместо стойности на отместване.
mysql> select convert_tz('2020-09-17 03:00:00','US/Eastern','UTC');
Надяваме се, че сега можете да конвертирате дата и час в UTC в MySQL.
Ubiq улеснява визуализирането на данни за минути и наблюдение в табла за управление в реално време. Опитайте го днес!