DELIMITER //
create function FactorialR (n int) returns int
begin
declare resultado int default 1;
set resultado=FactorialR(n-1)*n;
return resultado;
end//
DELIMITER ;
uj5u.com熱心網友回復:
MySQL 函式不允許遞回。 MySQL 中的遞回存盤函式
uj5u.com熱心網友回復:
你不能使用遞回,但你總是可以使用簡單的回圈
當然,您可以使用允許遞回呼叫的 Pocedures
create function FactorialR (n int) returns int begin declare resultado BIGint default 1; DECLARE m int DEFAuLT 1; loop_label: LOOP IF m = n THEN LEAVE loop_label; END IF; SET m = m 1; set resultado=resultado*m; END LOOP; return resultado; end
SELECT FactorialR(4)| 因子R(4) | | ------------: | | 24 |
db<>在這里擺弄
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/367601.html
