1. 사용자 정의 함수란?
매개 변수를 받아 복잡한 계산이나 쿼리문을 수행하여 결과를 반환
2. 장점
1. 모듈식 프로그래밍
- 함수를 한 번 만들어 저장한 후에는 여러 번 호출 할 수 있다.
- 데이터 베이스 안에 함수의 형태로 로직이 존재하게 되므로, 함수의 로직만 수정하면 모든 응용프로그램에 수정 없이 영향을 받을 수 있다.
2. 성능 향상
- 실행 계획을 프로시저 캐시에 저장
- 반복 실행 시에는 캐시를 다시 사용함으로써 쿼리문에 대한 컴파일 비용 절감
3. 네트워크 트래픽 감소
- 복잡한 쿼리문을 네트워크를 통해 전송할 필요 없이 함수만 호출하면 된다.
3. 사용자 정의 함수의 종류
- 스칼라 함수(Scalar Functions)
- 인라인 테이블 값 함수(Inline Table-valued Functions)
- 다중문 테이블 값 함수(Multi-statement Table-valued Functions)
4. 스칼라 함수
- 매개 변수를 받아 로직을 처리한 후 그 결과로 값 하나만을 반환한다.
- 하나의 값이므로 FROM 절에서 사용할 수 없다.
5. 인라인 테이블 값 함수
- 함수 안에 SELECT 문 하나만 포함 할 수 있다.
- 뷰와 비슷하지만 매개변수가 있다.
- 매개변수를 받아 수행되는 SELECT 이 결과로 반환된다.
6. 다중문 테이블 값 함수
- 함수 결과가 테이블 형태 결과 집합이다.
- 구문이 많이 포함되어 저장 프로시저와 비슷하다.
- 테이블 형태를 테이블 변수로 미리 지정하고 시작한다.
- 함수 안에서 테이블 변수에 행을 추가, 변경, 삭제 할 수 있다.
'DataBase > SQL Server' 카테고리의 다른 글
[Procecure] 저장 프로시저 개발 시 유용한 설정 (0) | 2024.06.03 |
---|