如果未在预订表中找到时间,如何返回时间

时间:2019-05-19 03:03:00

标签: sql postgresql

我的会议室包含所有预订信息,我想根据用户的输入向用户返回预订时间(开始时间和结束时间)。

房间:

ID   Name    Type  StartTime  EndTime
01    Room01  1     8:00:00     8:30:00
02   Room02   2     9:00:00     9:30:00
01    Room01  1     9:00:00     9:30:00
02   Room02   2     10:00:00     9:00:00
01    Room01  1     11:00:00     11:30:00
02   Room02   2     13:00:00     13:30:00

案例1 :如果客户要预订开始时间:8:00:00 并进行持续时间预订: 30分钟(结束时间:8:30:00)< / strong>。在我的数据库中,因为预订Room01已有预订,所以Room 02在预定时间内没有预订。我想要postgres返回是: Room02开始时间:8:00:00和结束时间:8:30:00

案例2::如果客户要预订开始时间:5:00:00 并进行持续时间:30分钟(结束时间:5:30:00 )。在我的数据库中,因为有两个房间空闲。我想要postgres返回Room01或Room02: Room01开始时间:5:00:00和结束时间:5:30:00

案例3::如果客户要预订开始时间:9:00:00 ,并且预订时间:30分钟(结束时间:9:30:00 )。在我的数据库中,因为Room01和Room02已预订。我希望postgres返回时间最接近用户预订时间。在我的数据库中查找,Postgres应该返回的是: Room01开始时间:9:30:00和结束时间:10:00:00(Room2是免费的,但并非最接近用户预订时间)

如何在postgres sql中做到这一点。我已经将近3天的时间遇到​​了这个问题,但是还没有找到最佳的计划。请帮助

0 个答案:

没有答案