DATABASE/MsSQL

[SQL Server_제어 흐름] 7. RETURN 문 사용방법

Fehoon- 2023. 6. 25. 11:43

- SQL Server의 RETURN 문

  • 현재 실행 중인 함수, 저장 프로시저 또는 트리거를 종료하고, 호출한 곳으로 제어를 반환하는 데 사용됩니다. RETURN 문은 해당 코드 블록의 실행을 중지하고 값을 반환하며, 호출자에게 제어를 전달합니다.

- RETURN 문 구조

RETURN [expression]

여기서 expression은 반환하고자 하는 값이나 표현식을 나타냅니다. 함수, 저장 프로시저 또는 트리거의 실행 중에 RETURN 문이 실행되면 해당 코드 블록의 실행이 중단되고 expression의 값을 가지고 호출한 쪽으로 제어가 반환됩니다.

- RETURN 문의 예시

-- 함수 생성
CREATE FUNCTION dbo.GetSquareRoot(@Number INT)
RETURNS FLOAT
AS
BEGIN
    DECLARE @Result FLOAT

    -- Calculate square root of the number
    SET @Result = SQRT(@Number)

    IF @Result >= 0
        RETURN @Result

    RETURN 0.0
END
GO

-- 함수 호출
DECLARE @InputNumber INT
SET @InputNumber = 16

SELECT dbo.GetSquareRoot(@InputNumber) AS SquareRoot

여기서 사용된 SQRT는 제곱근을 구하는 함수입니다.

SELECT SQRT(25) AS SquareRoot -- 25의 제곱근인 5 반환
SELECT SQRT(2) AS SquareRoot -- 2의 제곱근인 약 1.4142 반환
SELECT SQRT(100) AS SquareRoot -- 100의 제곱근인 10 반환

위의 예시에서는 GetOrderTotal이라는 함수가 정의되어 있습니다. 함수 내부에서는 주문의 총액을 계산하고, 계산된 총액이 1000보다 큰 경우 @Total 값을 반환하고 함수 실행을 종료합니다. 그렇지 않은 경우에는 단순히 호출자에게 제어를 반환하고 값을 반환하지 않습니다.

SquareRoot
-----------
4

RETURN 문은 함수, 저장 프로시저, 트리거 등에서 사용되어 해당 코드의 실행을 중지하고 호출자로 제어를 반환합니다. 이를 통해 조건에 따라 특정 시점에서 실행을 종료하고 값을 반환할 수 있습니다.

반응형