在 PostgreSQL 9.4 上计算两个小时之间的时差
Calculate the difference between two hours on PostgreSQL 9.4
给定一个 table 如下:
create table meetings(
id integer primary key,
start_time varchar,
end_time varchar
)
考虑到这个table中存储的字符串遵循格式'HH:MM'并且有24小时格式,PostgreSQL 9.4上有没有我可以将字段转换为时间的命令,计算差异在它们之间,以及 return 可用完整小时数的单一结果?
例如:start_time: '08:00' - end_time: '12:00'
结果必须是 4
.
在您的特定情况下,假设您正在使用时钟值(它们都属于同一天),我想您可以这样做
(clock_to::time - clock_from::time) as duration
请允许我为您准备好 运行 示例:
with cte as (
select '4:00'::varchar as clock_from, '14:00'::varchar as clock_to
)
select (clock_to::time - clock_from::time) as duration
from cte
给定一个 table 如下:
create table meetings(
id integer primary key,
start_time varchar,
end_time varchar
)
考虑到这个table中存储的字符串遵循格式'HH:MM'并且有24小时格式,PostgreSQL 9.4上有没有我可以将字段转换为时间的命令,计算差异在它们之间,以及 return 可用完整小时数的单一结果?
例如:start_time: '08:00' - end_time: '12:00'
结果必须是 4
.
在您的特定情况下,假设您正在使用时钟值(它们都属于同一天),我想您可以这样做
(clock_to::time - clock_from::time) as duration
请允许我为您准备好 运行 示例:
with cte as (
select '4:00'::varchar as clock_from, '14:00'::varchar as clock_to
)
select (clock_to::time - clock_from::time) as duration
from cte