2013-05-27 6 views
2

У меня есть строка, содержащая ISO 8601 форматированное значение даты-времени (например: 2013-05-21T15:00:00+0200) и часовой пояс (например: Europe/Rome).Формат даты в формате ISO 8601 для PostgreSQL

Что является лучшим Postgres data type для представления этого формата даты?

+3

Просто для будущих вопросов, пожалуйста, всегда указывайте вашу точную версию PostgreSQL ('выберите вариант()'). Это не важно для этого конкретного вопроса, но это часто будет. –

ответ

7

Тип «временная отметка с часовым поясом» - это то, что вы хотите.

http://www.postgresql.org/docs/current/static/datatype-datetime.html

+0

У меня есть строка в этом формате: 2013-05-21T15: 00: 00 + 0200 "и часовой пояс:« Европа/Рим ». Как я могу использовать эту строку в запросе INSERT, если я использую тип данных как« временную метку со временем » zone "? Нужна ли мне конкретная функция преобразования даты и времени ISO 8601 в метку времени с форматом часового пояса? – Safari

+0

Postgres не хранит часовой пояс, он просто пересчитывает временную шкалу времени сервера, а ваш часовой пояс задается« +200 ». Вкладка INSERT INTO (somecol) VALUES ('2013-05-21T15: 00: 00 + 0200') должна работать –