MySql - ВЫБРАТЬ столбец TimeStamp в формате UTC - PullRequest
13 голосов
/ 09 октября 2011

В моей БД Mysql 5.0 у меня есть столбец для управления информацией LastUpdated.Столбец является меткой времени и автоматически обновляет данные MySql.

Я пытаюсь выбрать этот столбец в формате UTC.

Проблема заключается в том, что сервер настроен на дату и время в США.Согласно документации MySql, БД хранит информацию в UTC, но когда я хочу отобразить информацию, она преобразует ее во время сервера.

Есть ли способ выполнить команду SELECT, избегая этого преобразования?

Ответы [ 2 ]

33 голосов
/ 28 сентября 2013
SELECT 
CONVERT_TZ(`timestamp_field`, @@session.time_zone, '+00:00') AS `utc_datetime` 
FROM `table_name`

Я сделал шпаргалку здесь: Должен ли MySQL иметь часовой пояс с UTC?

6 голосов
/ 09 октября 2011

Помимо изменения часового пояса сервера по умолчанию, часовой пояс также можно настроить для каждого соединения, выполнив инструкцию SQL:

SET time_zone = timezone;

Где часовой пояс - это название часового пояса ( см. Документы MySQL ).

Кроме того, вы также можете преобразовать временную метку в другой часовой пояс, используя функцию CONVERT_TZ .

...