PostgreSQL计算时间差
由于工作中遇到要计算数据库中的时间差,查询相关文档总结了如下几个方法(默认原数据中的时间格式为"2021-11-11 00:30:01"字符串类型):
1.date_part
[格式]:date_part(参数,starttime::timestamp-endtime::timestamp)
注:参数可以是’day’,‘hour’,‘minute’,‘second’
[举例]:计算起始时间的分差
select date_part('minute','2021-11-11 13:10:15'::timestamp-'2021-11-11 12:55:25'::timestamp);
返回值:14
返回的是两个时间的分钟差: 14
2.age
[格式]:age(starttime::timestamp,endtime::timestamp)
[举例]:计算起始时间差
select age('2021-11-11 13:10:15','2021-11-11 12:55:25');
返回值:00:14:50
3.extract
[格式]:extract(epoch from(starttime::timestamp-endtime::timestamp)
[举例]:计算起始时间差
select extract(epoch from('2021-11-11 13:10:15'::timestamp-'2021-11-11 12:55:25'::timestamp));
返回值:890
返回的是两个时间的秒差