[sql] 사용자 정의 함수

SQL에서 사용자 정의 함수는 데이터베이스에서 사용자가 정의한 함수를 의미합니다. 이러한 함수를 사용하면 복잡한 연산을 간소화하고 코드의 재사용성을 높일 수 있습니다.

종류

다양한 종류의 사용자 정의 함수가 있지만, 주로 스칼라 함수와 테이블 함수가 사용됩니다.

스칼라 함수 (Scalar Functions)

스칼라 함수는 하나의 입력 값을 받아들이고, 하나의 결과를 반환합니다. 예를 들어, 숫자의 제곱을 계산하는 Square 함수가 있습니다.

CREATE FUNCTION Square(@num INT)
RETURNS INT
AS
BEGIN
    RETURN @num * @num;
END;

테이블 함수 (Table Functions)

테이블 함수는 여러 개의 행을 반환합니다. GetEmployees 함수는 부서별 직원 정보를 반환하는 예시입니다.

CREATE FUNCTION GetEmployees(@departmentId INT)
RETURNS TABLE
AS
RETURN (SELECT * FROM Employees WHERE DepartmentId = @departmentId);

장점

사용자 정의 함수를 사용하는 주요한 이점은 다음과 같습니다:

결론

사용자 정의 함수는 SQL에서 데이터 처리 및 연산을 보다 효과적으로 수행할 수 있게 해주는 중요한 도구입니다. 적절히 활용하여 데이터베이스의 성능을 향상시키고 코드의 유지보수성을 높이는 데 도움이 될 것입니다.


참고 자료:

  1. Microsoft, “CREATE FUNCTION (Transact-SQL)”, 링크