오라클 데이터베이스에서 IF-THAN-ELSE 논리를 사용하려면 다음과 같은 방법이 있습니다.
- CASE 표현
- DECODE 함수
CASE 표현
> SELECT column/expression
> CASE column
> WHEN 표현1 THEN 리턴1
> WHEN 표현2 THEN 리턴2
> ELSE 표현(else)
> END 표현할이름
> FROM tablename;
CASE다음에 오늘 컬럼에서 표현1를 찾으면 리턴1을 하고, 표현2를 찾으면 리턴2를 합니다. 비교할 표현이 없을 경우에는 ELSE표현값이 리턴됩니다.
※ 주 의 - THEN, ELSE 다음값에는 절대 NULL값이 들어갈 수 없습니다. 아무것도 할 수 없을 경우 오라클에서 NULL값을 리턴시키기 때문에 NULL값은 써서는 안됩니다.
DECODE 함수
함수의 형태로 IF-THEN-ELSE 놀리를 사용하며, 함수를 이용하기 때문에 간단합니다.
DECODE 함수 사용법
> SELECT column/expression,
> DECODE(column, 표현1, 리턴1, 표현2, 리턴2, else 표현) 표현할 이름
> FROM tablename;
'DBMS > Oracle 10g' 카테고리의 다른 글
[JOIN] SELECT문을 이용해서 한개 이상의 TABLE에서 정보얻기 (0) | 2008.12.21 |
---|---|
그룹함수 (0) | 2008.12.21 |
중첩함수와 일반함수 (0) | 2008.12.20 |
변환함수(데이터타입의 변환) (0) | 2008.12.15 |
오라클 날짜 표현 (0) | 2008.12.15 |