This is my code
CREATE OR REPLACE FUNCTION test_excep (arg INTEGER) RETURNS INTEGER 
AS $$
    DECLARE res INTEGER;
    BEGIN
        res := 100 / arg;
        BEGIN
            EXCEPTION
            WHEN division_by_zero 
            THEN  RETURN 999;
        END;
        RETURN res;
    END;
$$
LANGUAGE plpgsql;
That is, I need returned "999", if happened division by zero, but this: SELECT test_excep(0)
returns error:  division by zero
CONTEXT:  PL/pgSQL function test_excep(integer) line 4 at assignment
What is wrong in my code?
 
     
     
    