Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

05 Mão na massa: explorando a ocupação de hospedagens (RESOLVIDO)

Desafio: Como pessoa desenvolvedora da equipe, você recebeu a responsabilidade de criar uma função no MySQL para determinar a ocupação média das hospedagens. A função deve calcular a média de hospedagens ocupadas em relação ao total de hospedagens listadas. Para simplificar, assuma que cada registro na tabela de alugueis representa uma ocupação e que o total de registros na tabela de hospedagens representa o número total de hospedagens disponíveis.

DELIMITER $$
CREATE FUNCTION MediaHospedagensOcupadas()
RETURNS DECIMAL (5,2) DETERMINISTIC
BEGIN
    DECLARE total_hospedagens INT;
    DECLARE hospedagens_ocupadas INT;
    DECLARE ocupacao_media DECIMAL(5,2);
    
     -- Calcula o total de hospedagens disponíveis
    SELECT COUNT(*) INTO total_hospedagens FROM hospedagens;

    -- Calcula o total de hospedagens ocupadas
    SELECT COUNT(DISTINCT hospedagem_id) INTO hospedagens_ocupadas FROM alugueis;

    -- Calcula a ocupação média
    SET ocupacao_media = (hospedagens_ocupadas / total_hospedagens) * 100;
RETURN ocupacao_media;
END$$
DELIMITER ;

SELECT MediaHospedagensOcupadas();
1 resposta
solução!

Bom dia Douglas!

Obrigado por compartilhar seu modo de resolução com a comunidade Alura. Continue praticando e explorando diferentes scripts para fortalecer seu entendimento.

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!