Sqlserver2005数据库查询问题

现在有3个表,分别是房间信息表ds_ht_data_room,房间类别表ds_ht_data_room_type,预订信息表ds_qt_regRomData
图一:
房间信息表,其中TypeID_int关联房间类别信息的RoomTypeId字段

图二:
房间类别信息表

图三:预订信息表
其中NeedRoom字段是需求房间,关联房间表的RoomId字段。checktime 是图4的开始时间,Leavetime是结束时间。

需要达到如下效果:
在预到时间和预离时间之间统计还剩余各个房类的总计房间数量,空房数量,以及该时间段已经被占用的数量(图三NeedRoom有房号,就表示该房间被占用)。

select * from ds_ht_data_room_type a join ds_ht_data_room b on a.RoomTypeID=b.TypeID_int join ds_qt_regRomData c on c.NeedRoom=a.RoomId
and c.checktime > 预到日期 and c.Leavetime< 结束日期

这样子就可以查询到所有在预到时间和预离时间之间 的房间,由于不知道你这预占用数和预订数咋个计算,你就这样子 具体筛选吧,还有问题http://feiger.cn留言。。
温馨提示:答案为网友推荐,仅供参考
相似回答