Обсуждение: Conversion of a column from Integer format type to 'timestamp with time zone'
Hi, there is a column 'created' in the 'customers' table which is actually supposed to be a 'timestamp with time zone' column but stored in this Integer format. How do I typecast this to 'timestamp with time zone' format?
select created from customers limit 3;
created
---------------
1521521848681
1508995056368
1521559994299
(3 rows)
select created from customers limit 3;
created
---------------
1521521848681
1508995056368
1521559994299
(3 rows)
Thanks,
Raj Kumar Narendiran.
Re: Conversion of a column from Integer format type to 'timestamp with time zone'
От
"David G. Johnston"
Дата:
On Thu, Jan 26, 2023 at 12:45 PM Raj kumar <rajkumar820999@gmail.com> wrote:
Hi, there is a column 'created' in the 'customers' table which is actually supposed to be a 'timestamp with time zone' column but stored in this Integer format. How do I typecast this to 'timestamp with time zone' format?
select created from customers limit 3;
created
---------------
1521521848681
1508995056368
1521559994299
(3 rows)
We have no way of knowing what the corresponding point-in-time a 0 in that column represents. Or, for that matter, what a 1 means.
David J.
"David G. Johnston" <david.g.johnston@gmail.com> writes:
> On Thu, Jan 26, 2023 at 12:45 PM Raj kumar <rajkumar820999@gmail.com> wrote:
>> Hi, there is a column 'created' in the 'customers' table which is actually
>> supposed to be a 'timestamp with time zone' column but stored in this
>> Integer format. How do I typecast this to 'timestamp with time zone' format?
>>
>> select created from customers limit 3;
>> created
>> ---------------
>> 1521521848681
>> 1508995056368
>> 1521559994299
>> (3 rows)
> We have no way of knowing what the corresponding point-in-time a 0 in that
> column represents. Or, for that matter, what a 1 means.
A plausible guess is that those are Unix timestamps expressed in
milliseconds, in which case you could do this:
=# select to_timestamp(1521521848681 / 1000.0);
to_timestamp
----------------------------
2018-03-20 00:57:28.681-04
(1 row)
But really you need to find out, not guess.
regards, tom lane