일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 데이터베이스
- eclipse 설정
- tomcat
- 한글 깨짐
- 도커
- 이클립스
- jQuery
- 인텔리제이
- java 오류
- 자바스크립트
- db
- spring form
- 엑셀
- JS
- spring 오류
- 이클립스 설정
- JSP
- 쿼리
- 자바 리스트
- JavaScript
- docker
- HTML
- Java
- vscode
- 엘라스틱서치
- elasticsearch
- 형변환
- CSS
- 자바
- Eclipse
Archives
- Today
- Total
개발노트
[Oracle] Function 본문
반응형
- Oracle Database 안에 만드는 **함수(Function)**입니다.
- 입력값을 받아서 계산하거나 결과를 리턴하는 프로시저블한 객체입니다.
- SQL문 안에서도 사용할 수 있고, 다른 프로시저나 트리거에서도 호출할 수 있습니다.
1. 기본 구조
CREATE OR REPLACE FUNCTION 함수명 (파라미터명 데이터타입, ...)
RETURN 반환타입
IS
-- 변수 선언부
BEGIN
-- 실행 로직
RETURN 반환값;
END;
2. 예제
1) 간단한 숫자 제곱 함수
CREATE OR REPLACE FUNCTION get_square (p_num IN NUMBER)
RETURN NUMBER
IS
BEGIN
RETURN p_num * p_num;
END;
사용법:
SELECT get_square(4) FROM dual;
-- 결과: 16
3. 주요 특징
항목 | 설명 |
CREATE OR REPLACE | 이미 있으면 덮어쓰고, 없으면 새로 만듦 |
IN / OUT | 기본은 IN (입력값만), 일반 함수는 리턴용이라 보통 IN만 씀 |
RETURN | 반드시 반환값이 있어야 함 |
IS | 선언부 시작 |
BEGIN ... END | 실행부 |
dual | 결과를 바로 조회할 때 사용하는 가상 테이블 |
4. 함수 삭제
DROP FUNCTION 함수명;
5. 주의사항
- 함수는 반드시 RETURN 문이 있어야 함.
- SQL 안에서 쓸 때는 SELECT 함수명() 형태로 사용.
- DML(INSERT, UPDATE, DELETE) 안에서는 제한이 있음 (부작용 없는 함수만 권장).
반응형
'Programming > Database' 카테고리의 다른 글
명세서 작성시 유용한 쿼리문 (0) | 2024.10.29 |
---|---|
[MySQL] SQL 모드 (sql_mode)와 클라이언트별 설정 방법 (0) | 2024.05.31 |
테이블 및 컬럼 찾기 (0) | 2023.01.08 |
JDBC 드라이버 로딩 및 Connection 생성 (0) | 2022.02.08 |
SQL 함수 (0) | 2020.04.27 |