업무 수행을 위해 패키지나 프로시저를 만들 때, 많이 사용하는 쿼리를 함수로 만들어 가져다 쓸 수 있다.
FUNCTION(함수) 만들기
create or replace NONEDITIONABLE FUNCTION FN_ADD
(
IN_NUM1 IN NUMBER
, IN_NUM2 IN NUMBER
)
RETURN NUMBER
AS
V_RESULT NUMBER(5);
BEGIN
V_RESULT := IN_NUM1 + IN_NUM2;
RETURN V_RESULT;
END FN_ADD;
- 덧셈을 위한 함수를 만들었다.
- sqldeveloper에서 함수에 우클릭하여 새 함수를 만들 수 있고 쿼리로 만들 수도 있다.
- 패키지나 프로시저를 만드는 것과 같이 매개변수를 설정해주고 함수이기 때문에 RETURN + 리턴받을 데이터 유형을 설정해 주어야 한다.
- AS와 BEGIN 사이에는 필요하다면 변수를 만들어주고, BEGIN 이후 필요한 쿼리를 작성해 준다.
SELECT 사용하고자 하는 패키지명.사용할 함수명(사용하고자 하는 매개변수나 컬럼명)
FROM 사용할 테이블 명;
SELECT 사용하고자 하는 프로시져명.사용할 함수명(사용하고자 하는 매개변수나 컬럼명)
FROM 사용할 테이블 명;
- 함수를 만들어주면 함수가 만들어진 접속(서버)에서는 패키지나 프로시저 어디에나 가져다 쓸 수 있으며 사용할 때는 패키지 이름.함수 이름(매개변수), 프로시져 이름. 함수 이름(매개변수) 라 써준다.
함수사용하기
SELECT FN_ADD(6,7) AS RESULT FROM DUAL;
'Database' 카테고리의 다른 글
[ SQL ] 문자열 함수들 (0) | 2021.05.03 |
---|---|
[ SQL ] PROCEDURE(프로시져), PACKAGE(패키지) (0) | 2021.05.02 |
[ SQL ] WHERE EXISTS, NOT EXIST (0) | 2021.05.01 |
[ SQL ] EXCEPTION - 예외 처리 (0) | 2021.04.30 |
[ SQL ] VIEW - 메모리 상에 존재하는 테이블 (0) | 2021.04.30 |