Salve a tutti,
non riesco a fare delle outer join:
codice:
SELECT hot.hotel_id, hot.hotel_name, hot.hotel_stars, hot.hotel_state, hot.hotel_city, hot.hotel_address, hot.hotel_zipcode, hot.longitud, hot.latitud, hot.hotel_desc, roomy, disponibles,
IFNULL(p.promo_sconto, 0) AS sconto, IFNULL(hps.prezzo_stagione, 0) AS stagionale, hpc.prezzo_camera AS prezzo
FROM hotels AS hot
LEFT JOIN promo p ON p.id_camera = cam.id_camera AND p.promo_dal >= '2015-06-25' AND p.promo_al <= '2015-06-26' AND p.numero_ospiti = '1'
LEFT JOIN hotel_prezzo_stagione hps ON hps.id_camera = cam.id_camera AND hps.prezzo_dal >= '2015-06-25' AND hps.prezzo_al <= '2015-06-26' AND hps.numero_ospiti = '1'
LEFT JOIN hotel_prezzo_camera hpc ON hpc.id_camera = cam.id_camera AND hpc.numero_ospiti = '1'
LEFT JOIN (SELECT cam.hotel_id, cam.id_camera AS roomy, MAX(cam.numero_camere - IFNULL(bca.cantidad,0)) AS disponibles FROM camere AS cam
LEFT JOIN (SELECT room_type_id, MAX(total_room + blocked_inventory) AS cantidad FROM booking_check_avilability WHERE check_in_date >= '2015-06-25' AND check_out_date <= '2015-06-26' GROUP BY room_type_id) AS bca ON cam.id_camera = bca.room_type_id WHERE cam.numero_ospiti >= '1' GROUP BY cam.hotel_id HAVING disponibles >= '1' ) AS rom ON hot.hotel_id = rom.hotel_id
WHERE hot.hotel_city = 'Adrano' AND disponibles >= '1'
L'errore è che non riconosce la colonna cam.id_camera.
Ho provato anche con RIGHT JOIN ma niente.