En este foro no está permitido resolver ejercicios, pero sí orientar. No entiendo para qué usas ese DISTINCT y tampoco por qué no usas INNER JOIN para unir las tablas relacionadas. El punto de partida es la tabla de alojamientos. Mira esto, lo pruebas y nos dices. Analiza cada línea de la SQL. Si funciona, pero no la entiendes, no habrás aprendido.