我可以搜索一个间隔是否在另一个间隔之间吗?
Can I search if an interval is between another interval?
我需要搜索某个日期或从该日期起 30 天后的任何一天是否介于某个时间间隔之间。使用 postgresql 可以以某种方式实现吗?
您可以简单地检查间隔重叠:
SELECT daterange(current_date, current_date + 31) && '[2022-01-01,2022-01-31]';
还有 tsrange
用于 timestamp
的范围和 tstzrange
用于 timestamp with time zone
的范围。
我需要搜索某个日期或从该日期起 30 天后的任何一天是否介于某个时间间隔之间。使用 postgresql 可以以某种方式实现吗?
您可以简单地检查间隔重叠:
SELECT daterange(current_date, current_date + 31) && '[2022-01-01,2022-01-31]';
还有 tsrange
用于 timestamp
的范围和 tstzrange
用于 timestamp with time zone
的范围。