在PostgreSQL中将varchar(255)类型的列转换为date类型
我是SQL新手,我正在尝试将在PostgreSQL中将varchar(255)类型的列转换为date类型,postgresql,sqldatetime,Postgresql,Sqldatetime,我是SQL新手,我正在尝试将varchar(255)类型的列转换为datetime(yyyy-mm-dd)。我找到了一些转换一个元素的建议,但是如何将整个列转换为新的数据类型呢 我的表是mydemo,要转换的列是ordertime,它只包含以下有效的日期时间字符串: 2021-05-13 2021-05-12 2021-05-10 有人能帮我吗?如果所有行都有有效的日期时间值,您可以使用下面的命令执行此操作: alter table mydemo alter column ordertime
varchar(255)
类型的列转换为datetime
(yyyy-mm-dd)。我找到了一些转换一个元素的建议,但是如何将整个列转换为新的数据类型呢
我的表是mydemo
,要转换的列是ordertime
,它只包含以下有效的日期时间字符串:
- 2021-05-13
- 2021-05-12
- 2021-05-10
有人能帮我吗?如果所有行都有有效的日期时间值,您可以使用下面的命令执行此操作:
alter table mydemo
alter column ordertime type timestamp USING ordertime::timestamp without time zone;
首先,没有Postgres版本4.2.18。请更正为实际版本。可以通过执行
选择版本()
找到。第二,ordertime
中是否只有datetime字符串?第三,要就地转换柱还是创建新柱?将上一次广告更新的答案添加到您的问题中。最后,请不要使用图像来表示数据,而是使用文本。@AdrianKlaver谢谢,我回答并更新我的问题。您想要日期和时间还是只想要日期?当前值仅为日期