CASE, WHILE

Hyuntae Jung·2022년 7월 26일
0

MS SQL

목록 보기
25/41
post-thumbnail

1. CASE

DECLARE @score INT = 100, @res NCHAR(1)

SET @res =
	CASE 
		WHEN (@score >=90) THEN 'A'
		WHEN (@score >= 80) THEN 'B'
		WHEN (@score >=70) THEN 'C'
		WHEN (@score >=60) THEN 'D'
		ELSE 'F'
	END

	PRINT '점수 : '+CAST(@score AS CHAR(3))
	PRINT N'학점: '+@res

다중 IF문보다 간결한 것을 볼 수 있다.

2. 반복문

  • WHILE
  • BREAK
  • CONTINUE
  • RETURN
WHILE 조건
	BEGIN
		SQL 명령문...
	END
DECLARE @i INT = 1, @sum INT = 0

WHILE (@i <=100)
	BEGIN
		SET @sum += @i
		SET @i += 1 
		PRINT @sum;
	END

3. +=, -=, *=, /=

DECLARE @i INT = 1, @sum INT = 0
WHILE (@i <=100)
BEGIN
	IF(@i %3 =0) 
		BEGIN
			PRINT '3의 배수: ' + CAST(@i AS CHAR(3))
			SET @i += 1
			CONTINUE
		END

		SET @sum += @i
	IF(@sum > 2000) BREAK
	SET @i += 1
END

PRINT '합계: ' + CAST(@sum AS CHAR(10))

WHILE문이 수행될 때 1, 2, 3, 4, 5, 6 중 3, 6에서만 PRINT '3의 배수: '가 실행되고 다른 값들은 계속해서 @sum에 누적되어 더해진다.

강의: ms sql 2014 제대로 배우기 2

0개의 댓글