如何检查PostgreSQL中连续几天是否有两个时间戳?我尝试过使用年龄函数,但它似乎不起作用。
答案 0 :(得分:0)
转换为日期(使用::date
强制转换),减去,(如果您不知道哪个是最新的,取最大的时间戳,则取abs值),并与1进行比较:
WITH some_data (t1, t2) AS
(
VALUES ('2017-01-06 10:30'::timestamp, '2017-01-05 09:40'::timestamp)
)
SELECT
(abs(t2::date - t1::date) = 1) AS t1_and_t2_in_consecutive_days
FROM
some_data ;