我的原始文本列的值为“2012-07-26T10:33:34”和“2012-07-26T10:56:16”。在使用Joda-Time的Java中,我可以通过调用
轻松地将其转换为日期 new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss")
。
在Postgres中,我如何忽略中间的'T'字符?
我尝试了'YYYY-MM-DD\THH:mm:ss'
,但收到了错误
>错误:未能找到从未知到文本的转换函数
答案 0 :(得分:1)
如果我没有弄错,那么在ANSI ANSI时间戳文字中允许使用T,因此以下内容应该有效。
select timestamp '2012-07-26T10:33:34';
你说你有一个文本列,所以你可能需要这样的东西:
create table foo (ts text);
insert into foo values ('2012-07-26T10:33:34')
select cast(ts as timestamp)
from foo;
这也有效:
select to_timestamp(ts, 'yyyy-mm-dd hh24:mi:ss')
from foo;
SQLFiddle示例:http://sqlfiddle.com/#!12/0b369/1