表结构如下:
create table item
(
	"ID" varchar not null,
	"unixTime" varchar not null,
);
现在
SELECT TO_TIMESTAMP("unixTime");
就总是提示
ERROR: function to_timestamp(character varying) does not exist Hint: No function matches the given name and argument types. You might need to add explicit type casts.
但随手试了几个值都没啥问题,比如:
select  to_timestamp('1358121600');
select to_timestamp('969408000');
初步怀疑表里有不同 format 的 timestamp 的值,然后 to_timestamp()不能根据不同的 format 自动智能转换?
有没有大佬可以启发下,看这样的情况怎么解决,急急急~谢谢谢谢
|  |      1hooopo      2020-10-04 18:12:51 +08:00 via Android SELECT TO_TIMESTAMP(unixTime); | 
|  |      3hooopo      2020-10-04 18:25:31 +08:00 via Android 很简单啊 先用 limit 1 测试下是不是数据问题 数据问题就修数据 | 
|      4nuistzhou OP @hooopo Limit 1 也报错,而且 80M 条数据,没法测呀,我倒是想有个函数可以把这些 invalid 的数据排除出去。。。 | 
|  |      5hooopo      2020-10-04 18:31:49 +08:00 via Android 一个正则就行啊 | 
|  |      6MoYi123      2020-10-04 18:32:17 +08:00  1 select TO_TIMESTAMP("unixTime"::int) from item; | 
|  |      8sagaxu      2020-10-04 19:24:07 +08:00 via Android 不能查一下手册看看这个函数的定义? | 
|  |      9sfqtsh      2020-10-04 19:40:10 +08:00 via Android \df to_timestamp 你看有 character varying 参数的吗? 显然没有! | 
|  |      11sfqtsh      2020-10-04 20:13:26 +08:00 via Android  1 @nuistzhou 那是 format function 一种,且有两个参数。 to_timestamp ( text, text ) → timestamp with time zone Converts string to time stamp according to the given format. (See also to_timestamp(double precision) in Table 9.32.) to_timestamp('05 Dec 2000', 'DD Mon YYYY') → 2000-12-05 00:00:00-05 |