Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.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
Sql 如何对保存为varchar的时间戳列求和_Sql_Postgresql_Sum_Timestamp - Fatal编程技术网

Sql 如何对保存为varchar的时间戳列求和

Sql 如何对保存为varchar的时间戳列求和,sql,postgresql,sum,timestamp,Sql,Postgresql,Sum,Timestamp,我有一个表,其中包含时间戳数据,但列的类型是字符变化的。i、 e totaltime character varying 0000:00:08.00 0000:12:39.00 0000:01:09.00 0000:00:02.00 0000:03:53.00 有没有一种简单的方法来计算列的和?这不是时间戳,而是间隔: select '0000:00:08.00'::timestamp; ERROR: invalid input syntax for type timestamp: "000

我有一个表,其中包含时间戳数据,但列的类型是字符变化的。i、 e

totaltime
character varying
0000:00:08.00
0000:12:39.00
0000:01:09.00
0000:00:02.00
0000:03:53.00

有没有一种简单的方法来计算列的和?

这不是时间戳,而是间隔:

select '0000:00:08.00'::timestamp;
ERROR:  invalid input syntax for type timestamp: "0000:00:08.00"
LINE 1: select '0000:00:08.00'::timestamp;

select '0000:00:08.00'::interval;
 interval 
----------
 00:00:08

这不是时间戳,而是间隔:

select '0000:00:08.00'::timestamp;
ERROR:  invalid input syntax for type timestamp: "0000:00:08.00"
LINE 1: select '0000:00:08.00'::timestamp;

select '0000:00:08.00'::interval;
 interval 
----------
 00:00:08

对。对时间戳求和毫无意义。“一小时加两小时”(求和间隔)是有意义的。“1点加2点”不是。但是间隔在varchar列中。谁知道还有什么在等着你呢。对时间戳求和毫无意义。“一小时加两小时”(求和间隔)是有意义的。“1点加2点”不是。但是间隔在varchar列中。谁知道还有什么在等着你?@paqogomez:按时间间隔,而不是按时间戳。对时间戳求和简直是胡说八道。如果您尝试,Postgresql将抛出一个错误;其他dbms可能会返回无意义的数字。(例如MySQL。)@paqogomez:Cast-to-interval,而不是timestamp。对时间戳求和简直是胡说八道。如果您尝试,Postgresql将抛出一个错误;其他dbms可能会返回无意义的数字。(例如,MySQL)