1
永久テーブルにレコードを挿入するためにMySQL関数を使用しようとしています。私のSQL関数のコードは次のようになります -MySQL関数を使用してテーブルにレコードを挿入する
delimiter //
create function fn_eval
(
a varchar(36),
b int,
c varchar(36)
)
returns bigint deterministic
begin
declare retvalue int default 0;
insert into eval_tbl(a,b,c,d)
select a,b,c,d
from
((select a,b,c,d from eval_tbl_1
inner join eval_tbl_2)
ON eval_tbl_1.c = eval_tbl_2.c)
)
SET retvalue=1;
return retvalue;
end //
delimiter ;
関数を呼び出すしようとしている場合:
select fn_eval ('1', 2, '3') from dual;
それは、クエリ内のインライン関数としてこれを使用しようとする上で、しかし、1を返します。 OKを返します。私はこれの理由を理解することができません。誰かが私にこれを助けることができますか?
どのように使用しようとしていますか? –
私は次の形式でそれを使用しようとしています: - eval_tbl_aからの選択fn_eval(a、b、c)、a; – Annie