unix中时间戳的总和

unix中时间戳的总和

我需要一个代码来在 unix 中添加 2 个格式的时间戳HH:MM:SS,有人可以帮忙吗?

不幸的是,我已将时间戳存储为数据库中的 varchar,格式为(例如)

07:53:39

现在我想要我存储为 varchar 的时间戳的总和。

我编写了以下查询,通过删除冒号将 varchar 转换为时间戳,现在我想要这个时间戳的总和,如何获得它?

答案1

在 SQL 中,您应该能够相当轻松地将两个时间戳添加在一起。我在 SQLite3 中这样做:

sqlite> select time("07:53:39","02:00:10");
09:53:49
sqlite> create table test ( id integer, ts varchar );
sqlite> insert into test (id,ts) values (1,"07:53:39"), (2,"10:12:01");
sqlite> select * from test;
1|07:53:39
2|10:12:01
sqlite> select time(a.ts, b.ts) from test a, test b where a.id=1 and b.id=2;
18:05:40

这两个例子实际上都滥用时区偏移来为给定的时间戳添加一定量的时间。

相关内容