Concat해서 다른거 찾는 퀴리 0 1 3,242

by 송현욱 [SQL Query] [2023.09.20 12:18:23]


안녕하세요.

 A테이블 데이타
코드     그룹   이름1   이름2
1             가          a            b1
1              가        a             b2
1               가       b             c1
1              가         c             d1
.

B테이블 데이타
그룹   val1     val2
가        a           b1
가       b           c1


A.,B테이블을 그룹칼럼으로 조인해서
A테이블의 이름1+이름2 하고 B테이블의 val1+val2하고  다른것을 검출하는 쿼리 부탁드립니다.
위샘플의 결과는..
1               가       a             b2
1              가         c             d1
가 나와야 합니다


항상 감사합니다.



by 마농 [2023.09.20 14:14:24]
WITH t_a AS
(
SELECT 1 cd, '가' grp, 'a' nm1, 'b1' nm2 FROM dual
UNION ALL SELECT 1, '가', 'a', 'b2' FROM dual
UNION ALL SELECT 1, '가', 'b', 'c1' FROM dual
UNION ALL SELECT 1, '가', 'c', 'd1' FROM dual
)
, t_b AS
(
SELECT '가' grp, 'a' val1, 'b1' val2 FROM dual
UNION ALL SELECT '가', 'b', 'c1' FROM dual
)
SELECT a.*
  FROM t_a a
  LEFT OUTER JOIN t_b b
    ON a.grp = b.grp
   AND a.nm1 = b.val1
   AND a.nm2 = b.val2
 WHERE b.grp IS NULL
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입