小编moh*_*amm的帖子

检查房间的可用性

我的 sql 数据库中有 3 个表:

Table Room

roomnumber   roomtype    
  1           DeluxeRoom           
  2           DeluxeRoom  
  3           DeluxeRoom
  100         StandardRoom           
  101         StandardRoom  
  102         StandardRoom
Run Code Online (Sandbox Code Playgroud)

Room 是一张存储房间及其类型的表。

Table Reservation

reservationid  checkin       checkout
  1           2017-01-01     2017-01-03
  2           2017-01-10     2017-01-20
  3           2017-02-05     2017-02-08
Run Code Online (Sandbox Code Playgroud)

预订是用户进行预订的表。

Table RoomReserve

reservationid    roomnumber
 1                 1
 2                 100
 2                 101
 3                 1
 3                 2
 3                 3
Run Code Online (Sandbox Code Playgroud)

在 RoomReserve 中,对于每个 bookingid,我可以输入多个 roomnumber 值。如果入住和退房日期不同,我还可以为不同的预订 ID 输入相同的房间号。

当用户想要预订房间时,我试图进行查询来计算可用房间,但我得到的结果是错误的。

这是我正在尝试的代码:

SELECT  COUNT(roomnumber)
    FROM  room
    WHERE  roomtype='DeluxeRoom'
      AND  roomnumber NOT IN (
        SELECT  *
            FROM  roomreserve r,reservation …
Run Code Online (Sandbox Code Playgroud)

mysql phpmyadmin

4
推荐指数
1
解决办法
7069
查看次数

标签 统计

mysql ×1

phpmyadmin ×1