728x90
안녕하세요. 오늘은 라이프사이클 재무에 대한 모든 것_글라이드 유튜브 강의를 듣고 참고하여 MSSQL의 조건문과 반복문에 대해 포스팅을 작성하도록 하겠습니다.
조건문(IF...ELSE)
주어진 조건에 따라 SQL 쿼리를 실행할지 말지를 결정함. 특정 조건이 참 또는 거짓일 때 각각 다른 쿼리를 실행하고자 할 때 유용함!
조건문 문법
-- IF 문을 이용해 선언된 변수가 짝인지 홀인지 알려주는 코드
IF <조건문>
BEGIN
<sql_query1> -- 조건이 참일 때 실행
END
ELSE
BEGIN
<sql_query2> -- 조건이 거짓일 때 실행
END
예시
DECLARE @i INT = 110
IF @i % 2 = 0
BEGIN
PRINT N'짝수'
END
ELSE
PRINT N'홀수'
END
반복문(WHILE)
조건이 만족되는 동안 SQL 쿼리를 반복해서 실행. 루프 내에서 SQL 쿼리를 반복적으로 실행해야 할 때 사용함
반복문 문법
WHILE <조건문>
BEGIN
<sql_query1>
<sql_query2 | BREAK | CONTINUE>
END
예시
-- WHILE 문을 이용하여 1에서 100까지의 값을 더하는 코드
DECLARE @i INT = 1
DECLARE @added BIGINT = 0
WHILE (@i <= 100)
BEGIN
SET @added = @added + @i
SET @i = @i + 1
END
PRINT @ADDED;
CONTINUE & BREAK
반복문 내에서 CONTINUE와 BREAK 키워드를 사용하여 루프의 흐름을 제어할 수 있음
CONTINUE
- 루프의 현재 반복을 건너뛰고 다음 반복을 즉시 시작함
- 주로 IF 조건문과 결합하여 사용함
BREAK
- 현재 반복을 종료하고 루프를 완전히 빠져나감
- 주로 IF 조건문과 결합하여 사용함
예시
-- WHILE문에 CONTINUE와 BREAK를 넣어 코드 작성
DECLARE @i INT = 1
DECLARE @added BIGINT = 0
WHILE (@i <= 100)
BEGIN
IF @i % 9 = 0
BEGIN
PRINT CAST(@i AS VARCHAR) + N' : 9의 배수입니다.'
SET @i = @i + 1
CONTINUE
END
IF @added >= 3000
BEGIN
PRINT N'@ADDED가 ' + CAST(@added AS VARCHAR) + N'값이 되어 종료합니다.'
BREAK
END
SET @added = @added + @i
SET @i = @i + 1
END;
728x90
'Databases > MSSQL' 카테고리의 다른 글
[MSSQL] 동적 SQL (0) | 2024.08.20 |
---|---|
[MSSQL] 저장 프로시저(Stored Procedure) (0) | 2024.08.20 |
[MSSQL] 필수 함수 총정리 (ft. 집계, 문자열, 날짜, 형식 변환, 출력) (0) | 2024.08.20 |
[MSSQL] 필수 데이터 타입 총정리 (0) | 2024.08.20 |
[MSSQL] 사용자 정의 함수 (ft. 스칼라 함수, 테이블 함수) (0) | 2024.08.20 |