기본 콘텐츠로 건너뛰기

PostgreSQL | CASE문 빈 문자열(Empty String) 널(Null) 처리


PostgreSQL | CASE문 빈 문자열(Empty String) 널(Null) 처리

insert, update시 빈 문자열(Empty String) 널(Null) 처리




1. COALESCE : null인 것을 ''으로 치환

2. CASE : epmtry string과 null을 같이 처리



-- col1이 null인 것을 ''으로 치환
COALESCE(#{col1}, '')


-- CASE문으로 epmtry string과 null을 같이 처리
CASE
   WHEN COALESCE(#{col1}, '') = '' TEHN null   -- 조건 : null or ''
   ELSE #{col1}
END


-- update query
UPDATE
   XXX_TABLE
SET
   col1 = (CASE WHEN COALESCE(#{col1}, '') = '' TEHN null ELSE #{col1} END)
WHERE
   id = #{id}

댓글