0

我有一个带有时间戳的不同字符字段(日期字符串),我想将其转换为时间戳类型。我可以成功地创建一个新的时间戳列(见下文)并使用列日期字符串的格式化版本填充此列,但我宁愿不创建新字段,我只想用其时间戳版本替换日期字符串字段。

所以这很好用:

ALTER TABLE service_areas ADD COLUMN newdate timestamp
update service_areas set newdate = to_timestamp(datestring, 'YYYY-MM-DD HH24:MI:SS.MS')

但我想做类似的事情:

update service_areas set datestring = to_timestamp(datestring, 'YYYY-MM-DD HH24:MI:SS.MS')

建议?

Z

4

1 回答 1

1

使用 USING 子句

postgres=#CREATE TABLE foo(a varchar);
创建表
postgres=# INSERT INTO foo VALUES('2013-07-15');
插入 0 1
postgres=# ALTER TABLE foo ALTER COLUMN a TYPE date USING to_date(a,'YYYY-MM-DD');
更改表
于 2013-07-29T16:48:19.117 回答