Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
CREATE OR REPLACE FUNCTION ARCTG2(X double precision) RETURNS double precision AS $$
DECLARE U double precision DEFAULT X;
DECLARE S double precision DEFAULT X;
DECLARE I INT DEFAULT 3;
BEGIN
WHILE abs(U) >= 0.0000001 LOOP
U := -U*X*X*(I-2)/I;
S := S + U;
I := I + 2;
END LOOP;
RETURN S;
END
$$ LANGUAGE plpgsql;а выносить логику за пределы СУБД
declare
U number:=1;
S number:=1;
I pls_integer:=3;
begin
WHILE (abs(U) >= 0.0000001) loop
U:= -U*1*1*(I-2)/I;
S:= S + U;
I:= I + 2;
END loop;
dbms_output.put_line(4*S);
end;
Хранимые процедуры. Кто быстрее