Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql функция, връщаща стойност от заявка

Ако приемем, че това са всички общи имена (таблицата няма да е добро име на таблица), проблемът е, че не можете да използвате ==за сравнение. Липсва ви и някакъв ключов синтаксис (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




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP извиквания на множество обектни функции

  2. Въведение в SQL типове данни

  3. Свързване с MySQL бази данни

  4. Не мога да създам модел на данни за обект - използвайки MySql и EF6

  5. Какъв е недостатъкът при използването на поле с размер на дълъг текст на MySQL, когато всеки запис ще се побере в поле с размер на среден текст?