检查PostgreSQL中的时间范围是否重叠,没有单独的Start和End字段

时间:2013-10-18 13:40:14

标签: postgresql

我在postgre有一张桌子,其中有房间预订商店:

Room_id |   Meet_time  |
123456  | [9:00 - 10:00) |

我想检查123456房间是否在9:30到10:00之间免费。我该怎么检查?

1 个答案:

答案 0 :(得分:1)

您可以使用&&运算符检查范围重叠(请参阅documentation)。 因此,要检查所有给定时间范围内免费的房间,您可以使用此查询:

select *
from <your table> as T
where not <given timerange> && T."Meet_time"

<强> sql fiddle demo