U know how to find witch rooms are not available (assuming that field named date represents the one that the room is not available), so u can do it by using 2 selects:
/*find the unavailable rooms*/
SELECT
GROUP_CONCAT(DISTINCT CONCAT('\'', room, '\'') SEPARATOR ',') as unavailable
FROM `inventory`
WHERE `date` BETWEEN (CURDATE() - INTERVAL 3 DAY) AND CURDATE()
/*this concat CONCAT('\'', room, '\'') is not necessary if the room field is an integer
INTERVAL 3 DAY - is just an example u can change that to the numbers of days u want
*/
put the result in a variable lets name the var $unavailable
/*grab all the rooms that are available*/
SELECT
room
FROM `inventory`
WHERE room NOT IN ($unavailable)