1
resposta

Mão na massa: explorando a ocupação de hospedagens

DELIMITER $$

CREATE FUNCTION OcupacaoMedia()
RETURNS DECIMAL(5,2) DETERMINISTIC
BEGIN
    DECLARE total_ocupacoes INT;
    DECLARE total_hospedagens INT;
    DECLARE resultado DECIMAL(5,2);

    SELECT COUNT(*) INTO total_ocupacoes FROM reservas;

    SELECT COUNT(*) INTO total_hospedagens FROM hospedagens;

    SET resultado = total_ocupacoes / total_hospedagens;

    RETURN resultado;
END$$

DELIMITER ;
1 resposta

Oi, John! Como vai?

Agradeço por compartilhar.

Seu uso de variáveis e a organização da função ficaram bem claros, isso ajuda muito na leitura e manutenção. Um ponto interessante é que a divisão entre inteiros pode gerar um resultado sem casas decimais em alguns casos, você pode pensar em algo pra cuidar disso.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!