我有两个 TIMESTAMP
和一个 INTERVAL
。我想知道间隔有多少次适合时间戳之间的间隙。
减去两个 TIMESTAMP
得到一个 INTERVAL
。
SELECT TIMESTAMP '2019-01-30' - TIMESTAMP '2019-01-29';
->
0 years 0 mons 1 days 0 hours 0 mins 0.00 secs
但我不能做 INTERVAL/INTERVAL
除法。这在异常中运行:
SELECT (TIMESTAMP '2019-01-30' - TIMESTAMP '2019-01-29') / INTERVAL '1 hour';
我想在末尾有一个整数。 24
用于上一个示例。有没有办法在 PostgreSQL 中处理它?</p>
最佳答案
您需要对两个间隔进行归一化,例如通过提取秒数然后除以它们:
SELECT extract(epoch from (TIMESTAMP '2019-01-30' - TIMESTAMP '2019-01-29')) / extract(epoch from INTERVAL '1 hour');
关于sql - 如何找出一个 INTERVAL 包含另一个 INTERVAL 的次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54437555/