Database

[MS-SQL] CASE / WHEN / THEN

Trunk 2023. 4. 16. 14:01

마소 링크 : CASE(Transact-SQL)

CASE 식에는 두 가지 형식이 있습니다.

  • 단순 CASE 식은 특정 식을 일련의 단순 식과 비교하여 결과를 결정합니다.
  • 검색된 CASE 식은 일련의 부울 식을 평가하여 결과를 결정합니다.

두 가지 형식 모두 선택 사항인 ELSE 인수를 지원합니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
-- Syntax for SQL Server and Azure SQL Database  
  
--Simple CASE expression:   
CASE input_expression   
     WHEN when_expression THEN result_expression [ ...n ]   
     [ ELSE else_result_expression ]   
END   
 
--Searched CASE expression:  
CASE  
     WHEN Boolean_expression THEN result_expression [ ...n ]   
     [ ELSE else_result_expression ]   
END
cs

 

 
1
2
3
4
5
6
-- Syntax for Azure Synapse Analytics and Parallel Data Warehouse  
  
CASE  
     WHEN when_expression THEN result_expression [ ...n ]   
     [ ELSE else_result_expression ]   
END
cs
WHEN : 조건식
THEN : TRUE이면 반환하는 결과
 
 
1
2
3
4
5
6
7
8
9
10
DECLARE @typeValue INT, @expireDate DATETIME
set @typeValue = 3
 
SELECT @expireDate =
CASE 
    WHEN @typeValue IN (1,2) THEN GETDATE() + 1
    WHEN @typeValue IN (3,4) THEN GETDATE() + 3
END
    
select @expireDate
cs

'Database' 카테고리의 다른 글

[MS-SQL] MERGE(Transact-SQL)  (0) 2023.04.16
[MySql] DELETE + JOIN 사용법  (1) 2023.04.16