[MSSQL] 조건문 (CASE WHEN, IF) 함수 사용법 & 예제
- DB / MSSQL
- 2018. 4. 2.
프로그래밍 언어 중에서 조건에 따라 작업방식을 달리 할 수 있는 조건문이라는 것이 있습니다. 대표적인 문법이 IF문과 CASE문인데요. MSSQL에서도 조건절인 CASE문과 IF문을 지원하니 한번 활용해보시는 것도 좋을 것 같습니다.
CASE WHEN
가장 많이 쓰이는 조건문입니다. 조건에 따라 값을 지정해 주는 역할을 합니다.
--CASE사용법--CASE WHEN 조건절 THEN 참일때 값 ELSE 거짓일때 값 END 컬럼명
--테이블(MY_TABLE)에서 성별(GENDER)이 001이면 여, 그게아니면 남자로 검색--SELECT DISTINCTGENDER,CASE WHEN GENDER = '001' THEN '여' ELSE '남' END AS 성별FROM MY_TABLE
다중 CASE WHEN
--테이블(MY_TABLE)에서 성적(SCORE)별 학점을 계산SELECT *,(CASE WHEN SCORE>= '90' THEN 'A학점'WHEN (SCORE>= '80' AND SCORE < '90') THEN 'B학점'WHEN (SCORE>= '70' AND SCORE < '80') THEN 'C학점'WHEN (SCORE>= '60' AND SCORE < '70') THEN 'D학점'ELSE 'F학점'END) AS '학점'FROM MY_TABLE
IF ELSE
CASE WHEN과 같은 조건문입니다. CASE문과 마찬가지로 조건에 따라 원하는 작업을 수행할 수 있습니다.
--IF 사용법--IF 조건 참일때 값 ELSE 거짓일때 값 END 컬럼명
--@NUM 이 30일때 30, 40일경우 40이라고 출력, 아닐경우 아니라고 출력--DECLARE @NUM INTSET @NUM = 40IF(@NUM = 30)PRINT 'NUM은 30입니다.'ELSE IF(@NUM=40)PRINT 'NUM은 40입니다'ELSEPRINT 'NUM은 30이나 40이 아닙니다.'
'DB > MSSQL' 카테고리의 다른 글
[MSSQL] IN절 사용법 & 예제 (0) | 2018.04.04 |
---|---|
[MSSQL] LIKE절 사용법 & 예제 (0) | 2018.04.03 |
[MSSQL] 공백제거 (LTRIM,RTRIM) 사용법 & 예제 (0) | 2018.04.01 |
[MSSQL] 날짜함수(GETDATE,DATEADD,DATEPART,DATEDIFF) 사용법 & 예제 (2) | 2018.03.31 |
코딩팩토리님의
글이 좋았다면 응원을 보내주세요!