두개의 테이블이 있으며, 각각 4개, 3개의 데이터가 있습니다.
다섯가지 유형으로 데이터를 뽑으려 합니다.
1. 전부동일 : 키값 2개 및 데이터 동일
2. 데이터틀림 : 키값동일, 데이터 틀림
3. A 테이블에만 존재
4. B 테이블에만 존재
5. 같은 키1 값이 존재하지만 키2가 없는 경우
A table |
|
|
B table |
|
|
결과 |
key1 |
key2 |
data |
key1 |
key2 |
data |
|
1234 |
1 |
Y |
1234 |
1 |
Y |
전부동일 |
1234 |
2 |
Y |
|
|
|
key2 없음 |
1234 |
3 |
Y |
1234 |
3 |
N |
data값 틀림 |
4567 |
0 |
Y |
|
|
|
A table ONLY |
|
|
|
8743 |
0 |
Y |
B table ONLY |
5번의 케이스를 따로 뽑고 싶은데 현재 4번의 케이스에 포함되어 버립니다.
생각해낸 방법이 ① 4번케이스를 뽑은 뒤, ② A table의 key1 값을 group by 하여
①, ② 테이블의 공통 key1 값을 뽑는 방법인데요.
데이터량이 양쪽테이블 다 십만 단위 이상되는 자료라 부하가 심하게 걸려서 다른 작업에 영향을 주지 않을까 걱정됩니다.
좀 더 효율적인 방법이 있을까하고 도움 요청글 올려봅니다.
좋은 주말 되세요~ |