Я не знаю, где ошибка в делении, потому что операнд /. Однако, если я поставлю операнд DIV, выполнение будет правильным
delimiter /
create function calculadora (num1 int(25), num2 int(25), signo varchar (1)) returns decimal(25,2)
begin
declare resultado decimal(25,2);
if signo='+'
then set resultado=num1+num2;
elseif signo='-'
then set resultado=num1-num2;
elseif signo='*'
then set resultado=num1*num2;
elseif signo='/'
then set resultado=num1/num2;
end if;
return resultado;
end/
select proveedores.calculadora(2, 5, '/');