Database
[ORACLE]두 테이블의 컬럼 3개 값들 비교 쿼리
애플자라
2017. 11. 7. 13:07
반응형
-- 1,2 컬럼값이 서로 같고 3컬럼값만 다른경우
SELECT * FROM A, B
WHERE (A.1 = B.1 AND A.2 = B.2)
AND A.3 <> B.3;
-- 1,3컬럼값은 같고 2컬럼값만 다른 경우
SELECT * FROM A, B
WHERE (A.1 = B.1 AND A.3 = B.3)
AND A.2 <> B.2;
-- 2,3컬럼값은 같고 1컬럼값만 다른 경우
SELECT * FROM A, B
WHERE (A.2 = B.2 AND A.3 = B.3)
AND A.1 <> B.1;
-- 1,2,3 컬럼이 전부 다른 경우
SELECT * FROM A, B
WHERE A.1 <> B.1 AND A.2 <> B.2
AND A.3 <> B.3;
SELECT * FROM A, B
WHERE (A.1 = B.1 AND A.2 = B.2)
AND A.3 <> B.3;
-- 1,3컬럼값은 같고 2컬럼값만 다른 경우
SELECT * FROM A, B
WHERE (A.1 = B.1 AND A.3 = B.3)
AND A.2 <> B.2;
-- 2,3컬럼값은 같고 1컬럼값만 다른 경우
SELECT * FROM A, B
WHERE (A.2 = B.2 AND A.3 = B.3)
AND A.1 <> B.1;
-- 1,2,3 컬럼이 전부 다른 경우
SELECT * FROM A, B
WHERE A.1 <> B.1 AND A.2 <> B.2
AND A.3 <> B.3;
출처 - http://www.gurubee.net/article/59245
--------------------------------------------------------
SELECT A.TIMS_DATE,
A.FUND_CODE,
A.FUND_NAME,
A.BM_INDEX,
B.BM_INDEX,
A.BM_RATE,
B.BM_RATE
FROM IFT_FUND_STANDARD_PRICE_RESULT A, IFT_FUND_STANDARD_MODIFY B
WHERE (A.BM_INDEX <> B.BM_INDEX OR A.BM_RATE <> B.BM_RATE)
--AND A.TIMS_DATE = '20171104'
AND A.TIMS_DATE = TO_CHAR(SYSDATE-3, 'YYYYMMDD')
AND A.TIMS_DATE = B.TIMS_DATE
AND A.FUND_CODE = B.FUND_CODE
반응형