728x90
함수
- SP와 동일하게 데이터베이스에 저장되는 서브루틴이며 값을 리턴할 수 있다
- 함수는 SQL 문장 내에서 사용 가능
[함수 정의]
CREATE\[OR REPLACE\] FUNCTION <function\_name> {
<arg1> \[IN|OUT|IN OUT\] (data\_type),
<arg2> \[IN|OUT|IN OUT\] (data\_type),
...
}
IS|AS
...
return data\_type;
BEGIN
...
return expression;
END;
[함수 삭제]
DROP FUNCTION <function\_name>
[함수 카탈로그 정보]
ALL_OBJECTS
: where 절 조건에object_type = 'FUNCTION'
사용USER_PROCEDURES
: 사용자가 정의한 프로시저 및 함수USER_SOURCE
: 함수 소스 코드( 컴파일 에러 발생도 포함 )
🍀 함수 예시
CREATE OR REPLACE FUNCTION
to_str(year NUMBER)
IS
str nvarchar2(10);
BEGIN
CASE year
WHEN 1 THEN str := 'Fresh Man';
WHEN 2 THEN str := 'Sophonmore';
WHEN 3 THEN str := 'Junior';
WHEN 4 THEN str := 'Senior';
ELSE str := '???';
END CASE;
RETURN str;
END;
select sname, to\_str(year) from STUDENT;
-- 실행결과
-- >> 나수영 Senior
-- 이찬수 Junior
-- 정기태 Fresh Man
728x90
'Database > SQL' 카테고리의 다른 글
[SQL] Java를 사용한 데이터베이스 응용프로그램의 개발 - JDBC (0) | 2021.12.06 |
---|---|
[SQL] 트리거 (0) | 2021.12.06 |
[SQL] 저장 프로시저(SP) (0) | 2021.12.05 |
[SQL] View (0) | 2021.10.17 |
[SQL] DML/SELECT (Advanced) (0) | 2021.10.15 |