1
resposta

Resposta vNotas como varchar

Gostaria de saber se está correto utilizar o valor da contagem(count) como texto (varchar)?

  • CREATE DEFINER=root@localhost PROCEDURE testa_numero_notas(vDataVenda date)

  • BEGIN

  • DECLARE vResultado varchar(20);

  • DECLARE vNotas Varchar(20);

  • SELECT COUNT(numero) INTO vNotas FROM notas_fiscais WHERE data_venda = vDataVenda;

  • IF vNotas > 70 then

  • SET vResultado = 'Muita Nota';

  • ELSE

  • SET vResultado = 'Pouca Nota';

  • END IF;

  • SELECT vResultado;

  • END

1 resposta

Olá, Eduardo, tudo bem?

Como está sendo retornado pelo COUNT um número inteiro, normalmente declaramos uma variável como int para receber este valor, porém, também pode ser utilizada uma variável do tipo texto.

Para retornar também o valor do COUNT, para retornar o número de notas fiscais juntamente com a mensagem de pouca nota ou muita nota, você pode informar no SELECT junto com variável vResultado, a variável vNotas: SELECT vResultado,vNotas ;

CREATE DEFINER=root@localhost PROCEDURE testa_numero_notas(vDataVenda date)
BEGIN
DECLARE vResultado varchar(20);
DECLARE vNotas Varchar(20);

SELECT COUNT(numero) INTO vNotas FROM notas_fiscais WHERE data_venda = vDataVenda;
IF vNotas > 70 then
    SET vResultado = 'Muita Nota';
ELSE
    SET vResultado = 'Pouca Nota';
END IF;
SELECT vResultado,vNotas ;
END 

Foi muito legal você ter compartilhado a sua resposta da atividade aqui com a gente, você está indo muito bem.

Continue assim e bons estudos!