PostgreSQL - invalid input syntax for type timestamp with time zone

Posted yulinlewis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PostgreSQL - invalid input syntax for type timestamp with time zone相关的知识,希望对你有一定的参考价值。

问题

在执行以下sql时报错:

select COALESCE(null,null,now(),'');

报错如下:

SQL Error [22007]: ERROR: invalid input syntax for type timestamp with time zone: ""
Position: 33
org.postgresql.util.PSQLException: ERROR: invalid input syntax for type timestamp with time zone: ""
Position: 33

解决方法

由于coalesce()要求输入参数是null或字符串,而now()返回的结果是带有时区的时间戳,所以就会报错;需要把时间戳转换成字符串才可以,如下所示:

select COALESCE(null,null,now()||'',''); 

select COALESCE(null,null,now()::varchar,'');

以上是关于PostgreSQL - invalid input syntax for type timestamp with time zone的主要内容,如果未能解决你的问题,请参考以下文章

GreenPlum - [Err] ERROR: invalid input syntax for integer: “1.0“

GreenPlum - [Err] ERROR: invalid input syntax for integer: “1.0“

GreenPlum - [Err] ERROR: invalid input syntax for integer: “1.0“

“错误”:“invalid input value for enum”仅在应用程序中使用 pg 包执行 INSERT SQL 操作时

Navicat Premium (oracle library is not loaded和ORA-01017:invalid username/password;logon denied)

inpu控件接受pipe的处理结果