在PHP MsSQL中查看可用性和客房预订

  • 本文关键字:可用性 PHP MsSQL php mysql
  • 更新时间 :
  • 英文 :


用户之前提出的问题

下面是我的SQL代码。

$find=mysqli_query($dbconn,"
SELECT *
FROM room 
WHERE room_no NOT IN 
(SELECT room_no 
FROM reservation 
WHERE check_in<='$check_out' 
AND check_out>='$check_in');

想象一下,有人预订了12.07至12.10的100号房间。另一个搜索12.10到12.12的同一房间?然后显示没有可用的房间。我的房间入住时间是下午2点。退房时间是上午10点。那么我该怎么办呢。

有人订了100号书室,时间是12点07分至12点10分。他的结账时间是上午12点10分。然后可以在12点10分至12点12分预订另一间100号房间。因为他的报到时间是12.10下午2点。(

我想我解释过了。

等待您的帮助。

谢谢。

PS。

Room Table
----------
id  room_no  status
1     100      1
2     101      1

Reservation Table
-------------------
id room_no     check_in          check_out
1    100      2020.12.07        2020.12.10

我也尝试过这个sql代码。但结果是一样的。

$find=mysqli_query($dbconn,"SELECT * FROM room WHERE room_no NOT IN (SELECT room_no FROM reservation WHERE(check_out>='$check_in' AND check_in<='$check_out')OR(check_out<='$check_in' AND check_in>='$check_out'))");

如果你想允许在同一天退房和入住,你只需要允许范围一致;将<=更改为<,将>=更改为>

最新更新