CREATE OR REPLACE FUNCTION snittkarakter2
RETURN eksamen.karakter%TYPE
IS
-- explain use of %TYPE
v_snitt eksamen.karakter%TYPE;
-- explain INTO and return
BEGIN
SELECT AVG(karakter) INTO v_snitt FROM eksamen WHERE fnr = (SELECT fnr FROM fag WHERE fnavn = 'PROG');
RETURN v_snitt;
END snittkarakter2;
/
-- Min løysing som returnerer 2,75
CREATE OR REPLACE FUNCTION f_snittkarakter
RETURN NUMBER
IS
v_fnavn VARCHAR2(30) := 'PROG';
i_snitt INTEGER(5,2) := 0;
BEGIN
SELECT AVG(e.karakter) INTO i_snitt
FROM eksamen e, fag f
WHERE e.fnr = f.fnr
AND f.fnavn = v_fnavn;
RETURN i_snitt;
END;
/
SELECT f_snittkarakter FROM dual;