sql >> Databáze >  >> RDS >> Mysql

Funkce Mysql vrací hodnotu z dotazu

Za předpokladu, že se jedná o všechna obecná jména (tabulka nebude dobrý název tabulky), problém je v tom, že pro srovnání nemůžete použít ==. Chybí vám také syntaxe některých klíčů (DECLARE, SELECT INTO atd.).

Změňte na toto:

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

Porovnávací funkce a operátory MySQL

Související otázka:Single se rovná v MYSQL

Nápověda k funkci:http://www. databasejournal.com/features/mysql/article.php/3569846/MySQL-Stored-Functions.htm




  1. Sběr dat data a času

  2. MYSQL:jak změnit pořadí tabulky

  3. Jak vytisknout tabulku databáze MySQL v PHP pomocí PDO

  4. Ladění výkonu dotazů MySQL