Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PostgreSQL中将varchar(255)类型的列转换为date类型_Postgresql_Sqldatetime - Fatal编程技术网

在PostgreSQL中将varchar(255)类型的列转换为date类型

在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

我是SQL新手,我正在尝试将
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谢谢,我回答并更新我的问题。您想要日期和时间还是只想要日期?当前值仅为日期