위 형태의 단일 레코드로 만들고 싶습니다. 불가피하면 flag를 만들어 하나의 행으로 만들어도 됩니다.
결론은 2개의 행을 하나의 레코드로 만들고 싶습니다. 도와주세요 ㅜ
dbms는 오라클 사용하고 있습니다!
by pajama
[2021.02.03 12:03:38]
이런식으로 될까요?
with t as (
select 'new_mem' MEM, 'N' CHK from dual union all
select 'old_mem' , 'Y' from dual
)
select max(decode(mem,'new_mem',chk)) new_mem, max(decode(mem,'old_mem',chk)) old_mem from t
by 마농
[2021.02.03 14:17:03]
SELECT MIN(DECODE(mem, 'new_mem', chk)) new_mem
, MIN(DECODE(mem, 'old_mem', chk)) old_mem
FROM t
;
SELECT *
FROM t
PIVOT (MIN(chk) FOR mem IN ('new_mem' new_mem, 'old_mem' old_mem))
;
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.