Às vezes, pode ser necessário alterar o fuso horário para UTC ou definir o fuso horário para UTC. Neste artigo, veremos como converter datetime para UTC no MySQL.
Como converter datetime para UTC no MySQL
Aqui estão as etapas para converter datetime para UTC no MySQL. Você pode alterar facilmente a data e hora para UTC usando convert_tz função.
Aqui está a sintaxe para convert_tz
convert_tz(date_value, original_timezone, new_timezone)
Na função acima, você pode especificar o valor da data como uma string literal, função do sistema ou nome da coluna, seu fuso horário original, bem como seu novo fuso horário. Os fusos horários originais e novos podem ser especificados usando deslocamentos ou nomes de fuso horário.
Aqui está um exemplo para converter o valor da data e hora do fuso horário local (GMT+10:00) para UTC(+00:00). Por padrão, você precisa especificar os fusos horários originais (+10:00) e novos (+00:00) como deslocamentos do 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 | +-----------------------------------------------------+
Da mesma forma, você também pode converter colunas de data, hora, data e hora usando convert_tz. Aqui está um exemplo para alterar o fuso horário de order_date coluna em vendas tabela, de UTC a 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 | +------------------------------------------+
Você também pode especificar fusos horários em vez de deslocamentos. No entanto, neste caso, você precisará baixar e instalar os fusos horários do MySQL em seu servidor. Aqui está um exemplo para converter o fuso horário EST para UTC especificando nomes de fuso horário em vez de valores de deslocamento.
mysql> select convert_tz('2020-09-17 03:00:00','US/Eastern','UTC');
Espero que agora você possa converter datetime para UTC no MySQL.
A Ubiq facilita a visualização de dados em minutos e o monitoramento em painéis em tempo real. Experimente hoje!