[PostgreSQL]select 조건에 따른 출력값 변경하기

2021. 5. 24. 17:56데이터베이스

컬럼값의 조건에 따라 다른값으로 출력할 수 있는 키워드 중 DECODE 와 CASE가 있다.

DECODE

SELECT DECODE(column_name, 'A', a_value,
			   'B', b_value,
                            'F', f_value, default_value) name
FROM table_name;

DECODE(column, befor, after

        ... , default )

형식에서 원래 값이 befor 일때 after 가 출력되는 방식이다.

이때 컬럼의 값은 befor와 동일(==)해야 한다.

 

CASE

SELECT title,
       length,
       CASE
           WHEN length> 0
                AND length <= 50 THEN 'Short'
           WHEN length > 50
                AND length <= 120 THEN 'Medium'
           WHEN length> 120 THEN 'Long'
       END duration
FROM film
ORDER BY title;

CASE의  경우에는 다양한 비교연산도 사용이 가능하다

 

[출처]https://www.postgresqltutorial.com/postgresql-case/

'데이터베이스' 카테고리의 다른 글

[PostgreSQL]테이블 컬럼 변경  (0) 2021.05.23