У меня три таблицы
CREATE TABLE IF NOT EXISTS `tbl_hotelinfo` (
`hotel_id` int(11) NOT NULL AUTO_INCREMENT,
`hotel_name` varchar(20) NOT NULL,
`hotel_normal_room` int(3) NOT NULL,
`hotel_delux_room` int(3) NOT NULL,
`hotel_nonac_room` int(3) NOT NULL,
`hotel_ac_room` int(3) NOT NULL,
`hotel_owner_email` varchar(20) NOT NULL,
`hotel_owner_index` int(11) NOT NULL,
`hotel_state` varchar(11) NOT NULL,
`hotel_district` varchar(11) NOT NULL,
`hotel_phno` int(13) NOT NULL,
`hotel_location` varchar(20) NOT NULL,
PRIMARY KEY (`hotel_id`)
)
CREATE TABLE IF NOT EXISTS `tbl_hotelbooking` (
`hotel_id` int(11) NOT NULL,
`normal_room_booked` int(3) NOT NULL DEFAULT '0',
`delux_room_booked` int(3) NOT NULL DEFAULT '0',
`nonac_room_booked` int(3) NOT NULL DEFAULT '0',
`ac_room_booked` int(3) NOT NULL DEFAULT '0'
)
CREATE TABLE IF NOT EXISTS `tbl_room_types` (
`hotel_id` int(11) NOT NULL,
`hotel_normal_room` enum('yes','no') NOT NULL DEFAULT 'no',
`hotel_delux_room` enum('yes','no') NOT NULL DEFAULT 'no',
`hotel_nonac_room` enum('yes','no') NOT NULL DEFAULT 'no',
`hotel_ac_room` enum('yes','no') NOT NULL DEFAULT 'no',
`normal_fair` int(11) NOT NULL,
`delux_fair` int(11) NOT NULL,
`non_ac_fair` int(11) NOT NULL,
`ac_fair` int(11) NOT NULL
)
теперь мне нужно присоединиться к этим трем таблицам, чтобы найти hotel_name, hotel_location для отеля, номера которого доступны
Предположим, что у нас имеется hotel_id. Во-первых, мне нужно найти hotel_room_types, доступные для конкретного hotel_id сейчас для каждого room_type (этот тип перечисления yes, предположим, что только для обычного типа enum типа yes) проверить, tbl_hotelinfo.hotel_normal_room> tbl_hotelbooking.normal_room_booked
я пробовал
$q="SELECT total.hotel_name ,total.hotel_phno
FROM tbl_hotelbooking AS book ,
tbl_hotelinfo AS total,
tbl_room_types AS rtype
WHERE
SELECT * from tbl_room_types
rtype.hotel_id='$hotel_id'
";