Есть ли способ разыграть BIGINT
до TIMESTAMP
или TIMESTAMP WITH TIME ZONE
в Postgres? Мне нужно скопировать данные из столбца BIGINT
в столбец TIMESTAMP
.
Вот что я пробовал:
update table
set date__timestamp = date__bigint::timestamp
where foo = 1;
ОШИБКА: невозможно привести тип bigint к метке времени без часового пояса
Я изменил столбец метки времени на столбец с часовым поясом и попытался это сделать:
update table
set date__timestamp = date__bigint::timestamp with time zone at time zone 'PST'
where foo = 1;
ОШИБКА: невозможно привести тип bigint к метке времени с часовым поясом
update table
set date__timstamp = TO_CHAR(TO_TIMESTAMP(date__bi / 1000), 'DD/MM/YYYY HH24:MI:SS')
where foo = 1;
ОШИБКА: столбец "date__timestamp" имеет тип отметки времени без часового пояса
но выражение имеет тип text Подсказка: вам нужно будет переписать или привести
выражение.
Данные выглядят так.
date_bigint: 20181102
date_timestamp: 2018-11-02 17:00:00.000000
Нужно ли передавать значения по умолчанию в кастинг?