본문 바로가기

MS-SQL

MS-SQL 재귀호출

반응형

1. 재귀호출이란 ? 

재귀 호출은 함수나 프로시저가 자신을 호출하여 작업을 수행하는 프로그래밍 기술이다.
문제를 간단하고 이해하기 쉽게 표현할 수 있으며, 특정 유형의 알고리즘에서 유용하게 사용된다.

 

2. MSSQL의 재귀 호출

  • 공통 테이블 식(Common Table Expressions, CTE)
    CTE는 WITH 절을 사용하여 정의되며, 재귀적으로 쿼리에 결과를 생성하는 데 사용된다.
  • 재귀 함수 구현
    재귀 함수를 사용하여 특정 작업을 반복적으로 수행한다.

3. 예시

-- 재귀적으로 팩토리얼을 계산하는 함수
CREATE FUNCTION dbo.Factorial (@n INT)
RETURNS INT
AS
BEGIN
    IF @n <= 1
        RETURN 1;
    ELSE
        RETURN @n * dbo.Factorial(@n - 1);
END;
GO

-- 팩토리얼 계산 테스트
SELECT dbo.Factorial(5) AS Result;

 

4. 주의사항

재귀 호출은 잘못된 사용으로 인해 무한 루프와 같은 문제를 발생시킬 수 있으므로 주의가 필요하다.
적절한 종료 조건을 설정하여 재귀 호출을 제어해야 한다.

반응형