sql(3) -COALESCE

Bonggus·2024년 1월 9일
0

db

목록 보기
3/5

같은 필드명의 데이터가 A, B 테이블에 나누어져 있는 경우, 마스터테이블을 통해 조인하면, 없는곳은 빈값으로 채워진다.

A, B필드는 서로 독립적이고, 필드명이 같기 때문에 합쳐서 하나의 필드로 보여주면 좋다고 생각한다면,

그렇다면 COALESCE를 사용하자.인자로 주어진 값들 중 NULL이 아닌 첫 번째 값을 반환하는 함수이다.

COALESCE(NULL, A) -> A
COALESCE(NULL, NULL) -> NULL
COALESCE(NULL, B, A) -> B

select
    COALESCE(
     slave1.zip_code,
     slave2.zip_code
    ) as zip_code
    from master
    left join slave1  on user.id = slave1.user_id
    left join slave2  on user.uuid = slave2.user_uuid
profile
프론트엔드

0개의 댓글