갑진년 값진 날로 가득하시길 바라면, 새해 복 많이 받으세요.
2개의 테이블을 union으로 합치고 있습니다.
테이블이 2가지가 있습니다.
tbl_a
rundatetime | name | desc |
2023-11-04 | 홍길동 | 1 |
2023-11-04 | 홍길순 | 2 |
2023-11-04 | 김길동 | 3 |
2023-11-05 | 홍길동 | 11 |
2023-11-05 | 홍길순 | 22 |
2023-11-05 | 김길동 | 33 |
2023-11-06 | 홍길동 | 111 |
2023-11-06 | 홍길순 | 222 |
2023-11-06 | 김길동 | 333 |
tbl_b
rundatetime | name | desc |
2023-11-04 | 강일이 | 4 |
2023-11-04 | 이이삼 | 5 |
2023-11-06 | 강일이 | 444 |
2023-11-06 | 이이삼 | 555 |
tbl_b 에서 2023-11-05 데이터가 누락되어 있습니다.
이를 아래와 같은 테이블로 조회하고 싶습니다.
rundatetime | name | desc |
2023-11-04 | 홍길동 | 1 |
2023-11-04 | 홍길순 | 2 |
2023-11-04 | 김길동 | 3 |
2023-11-04 | 강일이 | 4 |
2023-11-04 | 이이삼 | 5 |
2023-11-06 | 홍길동 | 111 |
2023-11-06 | 홍길순 | 222 |
2023-11-06 | 김길동 | 333 |
2023-11-06 | 강일이 | 444 |
2023-11-06 | 이이삼 | 555 |
tbl_b에 없는 2023-11-05 데이터는 빼고 조회하고 싶습니다.
이런 조회도 가능할까요?
찾아보다가 못 찾고 이렇게 질문드립니다.
오늘도 좋은 하루 보내세요^^
요청하신 케이스가 전부인가요? (A 에만 자료가 있는 경우)
혹시 B 에만 자료가 있는 경우가 존재할 가능성은 없는지요?
WITH tbl_a AS ( SELECT '2023-11-04' rundatetime, '홍길동' name, '1' desc_ UNION ALL SELECT '2023-11-04', '홍길순', '2' UNION ALL SELECT '2023-11-04', '김길동', '3' UNION ALL SELECT '2023-11-05', '홍길동', '11' UNION ALL SELECT '2023-11-05', '홍길순', '22' UNION ALL SELECT '2023-11-05', '김길동', '33' UNION ALL SELECT '2023-11-06', '홍길동', '111' UNION ALL SELECT '2023-11-06', '홍길순', '222' UNION ALL SELECT '2023-11-06', '김길동', '333' ) , tbl_b AS ( SELECT '2023-11-04' rundatetime, '강일이' name, '4' desc_ UNION ALL SELECT '2023-11-04', '이이삼', '5' UNION ALL SELECT '2023-11-06', '강일이', '444' UNION ALL SELECT '2023-11-06', '이이삼', '555' ) SELECT * FROM tbl_a WHERE rundatetime IN (SELECT rundatetime FROM tbl_b) UNION ALL SELECT * FROM tbl_b ORDER BY 1, 3 ;