1
resposta

Meu codigo

Tenho aproveitado as aulas pra ir criando variações do exercício e relembrando outras ferramentas que aprendi.

CREATE DEFINER=`root`@`localhost` PROCEDURE `acha_status_preco`(vProduto varchar(50))
BEGIN
    declare vPreco float;
    declare vMensagem varchar(30);
   select preco_de_lista into vPreco 
   from tabela_de_produtos where CODIGO_DO_PRODUTO = vProduto;
   If vPreco >= 12 then
        set vMensagem = 'Produto Caro';
    Elseif vPreco >=7 and vPreco < 12 then
        set vMensagem = 'Produto em conta';
    ELse
        set vMensagem = 'Produto Barato';
    End if;
    select vMensagem, concat('o valor do produto é ','R$',round(vPreco, 2)) as Preco;
END

Aqui eu aproveitei pra arrendondar o valor final usando o comando round e concatenar a mensagem. Fiquei na ducvida se usava round, format ou outro. Nesse caso qual a melhor opção?

1 resposta

Olá, Alysson, tudo bem?

Peço desculpas pela demora no retorno.

A sua procedure ficou muito legal, você está indo muito bem. Porém, como você está buscando o preço de um produto que já está armazenado em uma tabela, indico que neste caso você não utilize funções matemáticas e busque o valor exato, sem realizar alterações, como arredondar o valor, pois neste caso, o preço do produto será retornado diferente do valor armazenado na tabela.

No MySQL existe uma série de funções matemáticas que podemos utilizar ao se trabalhar com números, foi muito interessante a forma como você utilizou a função ROUND na sua procedure.

Foi muito legal também você ter compartilhado a sua resposta da atividade aqui com a gente, você está indo muito bem :)

A título de curiosidade, caso queira ver um pouco mais sobre as funções matemáticas, indico a leitura da documentação do MySQL.

OBS: Infelizmente a documentação do MySQL é em inglês, então, caso tenha dificuldade em relação a este idioma, indico que tente utilizar o tradutor do navegador, para conseguir efetuar a leitura em português, mas qualquer dúvida ou dificuldade estarei à disposição.

Continue assim e bons estudos!