Формат DateTime в PostgreSQL?

Кто-нибудь может сказать, пожалуйста, скажите мне, как изменить 2018-01-15T08: 54: 45.000Z на 2018-01-15 08:54:45 в PostgreSQL.

Здесь моя временная метка: 2018-01-15T08: 54: 45.000Z находится в текстовом формате. Мне нужно разделить его на два разных столбца, например, один для единственной даты: 2018-01-15, а другой только для времени: 08: 54: 45


person Dark Star    schedule 01.03.2019    source источник


Ответы (1)


Вы должны иметь возможность напрямую преобразовать свой текст в timestamp, а затем снова преобразовать в date или time, чтобы получить два разных столбца:

SELECT
  ('2018-01-15T08:54:45.000Z'::timestamp)::time AS time,
  ('2018-01-15T08:54:45.000Z'::timestamp)::date AS date
; 
person Andrew Whitaker    schedule 01.03.2019
comment
Привет, Андрей, большое спасибо за ответ. Этот код правильно преобразует метку времени, но показывает дополнительную цифру после секунды, как, например, 15: 30: 59.00163. В моем случае это работает как UPDATE table_name SET time = ('timestamp' :: TIMESTAMP) :: timestamp (0); - person Dark Star; 02.03.2019