Ответ 1
Предположим, что это все родовые имена (таблица не будет хорошим именем таблицы), проблема в том, что вы не можете использовать == для сравнения. Вам также не хватает ключевого синтаксиса (DECLARE, SELECT INTO и т.д.).
Изменить на это:
CREATE FUNCTION func01(value1 INT , monto DECIMAL (10,2))
RETURNS DECIMAL(10,2)
DETERMINISTIC
BEGIN
DECLARE var_name DECIMAL(10,2);
SET var_name = 0;
SELECT if(value1 = 1,monto *divisa_dolar,monto *divisa_euro) INTO var_name
FROM table
WHERE data_init = 1;
RETURN var_name;
END
Функции и операторы сравнения MySQL
Связанный с нами вопрос: Single Equals в MYSQL
Справка по функциям: http://www.databasejournal.com/features/mysql/article.php/3569846/MySQL-Stored-Functions.htm