Mega Code Archive

 
Categories / Oracle PLSQL / Stored Procedure Function
 

How stored functions can be called from SQL

SQL> CREATE TABLE emp (   2    id         NUMBER PRIMARY KEY,   3    fname VARCHAR2(50),   4    lname  VARCHAR2(50)   5  ); Table created. SQL> SQL> INSERT INTO emp (id, fname, lname)VALUES (1, 'A', 'B'); 1 row created. SQL> INSERT INTO emp (id, fname, lname)VALUES (2, 'C', 'D'); 1 row created. SQL> INSERT INTO emp (id, fname, lname)VALUES (3, 'Enn', 'F'); 1 row created. SQL> INSERT INTO emp (id, fname, lname)VALUES (4, 'G', 'H'); 1 row created. SQL> INSERT INTO emp (id, fname, lname)VALUES (5, 'G', 'Z'); 1 row created. SQL> SQL> CREATE TABLE myTable   2    (num_col    NUMBER   3    ,char_col   VARCHAR2(60)); Table created. SQL> SQL> SQL> CREATE OR REPLACE FUNCTION FullName (p_empID  emp.ID%TYPE) RETURN VARCHAR2 IS   2   3    v_Result  VARCHAR2(100);   4  BEGIN   5    SELECT fname || ' ' || lname INTO v_Result FROM emp WHERE ID = p_empID;   6   7    RETURN v_Result;   8  END FullName;   9  / Function created. SQL> SQL> SQL> SELECT FullName(ID) full_name FROM emp WHERE ID < 10 ORDER BY full_name; FULL_NAME -------------------------------------------------------------------------------- A B C D Enn F G H G Z 5 rows selected. SQL> SQL> SQL> drop table emp; Table dropped. SQL> drop table myTable; Table dropped.