For DEVELOPER/ORACLE::DB
[ORACLE] CASE WHEN THEN ELSE 문 :: CASE문 (SQL 조건문)
오니기리석
2020. 5. 15. 03:33
728x90
반응형
CASE-WHEN-THEN-ELSE SQL 조건문
JAVA나 다른 언어의 IF ELSE 조건 문처럼 SQL에서도 조건문이 가능합니다.
형식{
CASE 컬럼명 | 표현식 WHEN 조건식1 THEN 결과1
WHEN 조건식2 THEN 결과2
.......
WHEN 조건식n THEN 결과n
ELSE 결과
END
};
SAMPLE ( 이중 CASE문 ){
CASE WHEN A = '01' THEN 'GOOD'
WHEN A = '02' THEN
CASE WHEN C = '21' THEN 'GOOD-1' -- 이중 CASE문
WHEN C = '22' THEN 'GOOD-2'
ELSE 'BAD'
END
WHEN A = '03' THEN 'BABY'
WHEN A = '04' THEN 'APPLE'
END AS SAMPLE -- ALIAS 는 END절 끝에 명명할수있다.
};
반응형
개인의견(주의사항){
CASE문은 해당 WHEN 절은 자바의 IF(_){
}ELSE IF(_){
}ELSE IF(_){
}ELSE {} 가 아니라
IF(_){
}IF(_){
}IF(_){
}ELSE(_){} 형식이다
이둘의 차이점은 ELSE IF문 같은 경우는 위에 IF문이 성립하면 해당 루프를 빠져나오지만
(2)반복 IF문의 경우 IF문이 성립해도 그다음 IF문을 실행한다는 차이점이 있다.
};
반응형