我目前正在尝试通过合并查询来优化数据库。但是在优化房间可用性查询时,我一直遇到瓶颈。
我有一个房间可用性表,每个记录都表示每个日期可用的房间数量。它的格式如下:
如果第14个日期的可用性为0,它仍然会给我其他两个日期。但是我只想在所有三个日期都可用时才获得那个room_id。
请告诉我是否有一种方法可以在MySQL中做到这一点,而不是分别查询每个日期/房间/可用性组合(这就是现在所做的 :-( )。
我尝试了各种组合,尝试使用room_availability_date = ALL (...),尝试了一些肮脏的重复子查询,但都没有成功。
提前感谢您的任何想法!
我有一个房间可用性表,每个记录都表示每个日期可用的房间数量。它的格式如下:
- room_availability_id (PK)
- room_availability_rid (fk_room_id)
- room_availability_date (2011-02-11)
- room_availability_number (可用房间数量)
WHERE room_availability_date IN('2011-02-13','2011-02-14','2011-02-15')
AND room_availability_number > 0
如果第14个日期的可用性为0,它仍然会给我其他两个日期。但是我只想在所有三个日期都可用时才获得那个room_id。
请告诉我是否有一种方法可以在MySQL中做到这一点,而不是分别查询每个日期/房间/可用性组合(这就是现在所做的 :-( )。
我尝试了各种组合,尝试使用room_availability_date = ALL (...),尝试了一些肮脏的重复子查询,但都没有成功。
提前感谢您的任何想法!